Desejo executar uma regressão logística binária para modelar a presença ou ausência de conflito (variável dependente) de um conjunto de variáveis independentes durante um período de 10 anos (1997-2006), com cada ano tendo 107 observações. Meus independentes são:
- degradação da terra (categórica para 2 tipos de degradação);
- aumento da população (0- não; 1-sim);
- tipo de subsistência (0 - tipo um; 1 - tipo dois);
- densidade populacional (três níveis de densidade);
- NDVI contínuo (produtividade máxima de vegetais);
- NDVI (declínio de veg do ano anterior - 0 - não; 1-sim) e
- e NDVI (declínio nos vegetais nos últimos dois anos - 0- não; 1- sim).
Sou bastante novo em tudo isso - este é um projeto que meu palestrante me deu - e, portanto, agradeceria alguns conselhos ou orientações. Eu já testei para multicolinearidade.
Essencialmente, meus dados são divididos em 107 unidades de observação (regiões espaciais), cobrindo 10 anos (1070 no total) e, para cada unidade de observação, fornece um valor "instantâneo" das condições das variáveis independentes naquele momento nessa unidade ( região). Eu quero saber como configurar minha regressão logística (ou tabela) para reconhecer os 107 valores de cada ano separadamente, para que as alterações no NDVI temporal entre diferentes unidades-ano possam ser avaliadas?
fonte
Respostas:
Este é realmente um problema extremamente sofisticado e uma pergunta difícil do seu professor!
Em termos de como você organiza seus dados, um retângulo de 1070 x 10 é adequado. Por exemplo, em R:
Para ajustar um modelo, a função glm (), como @ gui11aume sugere, fará o básico ...
... mas isso tem o problema de tratar "país" (presumo que você tenha país como suas 107 unidades) como um efeito fixo, enquanto que um efeito aleatório é mais apropriado. Também trata o período como um fator simples, não sendo permitida autocorrelação.
Você pode resolver o primeiro problema com um modelo de efeitos mistos lineares generalizados, como no pacote lme4 de Bates et al. , Em R. Há uma boa introdução a alguns aspectos disso aqui . Algo como
seria um passo à frente.
Agora, seu último problema restante é a correlação automática nos 10 períodos. Basicamente, seus 10 pontos de dados em cada país não valem tanto quanto se fossem 10 pontos independentes e idênticos, distribuídos aleatoriamente. Não conheço uma solução de software amplamente disponível para autocorrelação nos resíduos de um modelo multinível com uma resposta não normal. Certamente não está implementado no lme4. Outros podem saber mais do que eu.
fonte
Este tutorial é abrangente.
Em R, você precisa preparar seus dados, digamos, variável
data
em adata.frame
, cuja primeira coluna é sua variável 0-1 (conflito) e as outras colunas são os preditores. Para variáveis categóricas, você deve verificar se elas são do tipofactor
. Para garantir que a coluna 3, digamos, tenha essa propriedade, você pode aplicar pordata[,3] <- as.factor(data[,3])
.Então é só uma questão de
Isso implica implicitamente que você tenha um modelo aditivo e fornece os valores estimados. Para obter uma saída mais abrangente, com teste para parâmetros individuais, você pode fazer
fonte