C'est en fait un problème extrêmement sophistiqué et une question difficile à poser à votre professeur!
En ce qui concerne la façon dont vous organisez vos données, un rectangle de 1070 x 10 est très bien. Par exemple, dans R:
> conflict.data <- data.frame(
+ confl = sample(0:1, 1070, replace=T),
+ country = factor(rep(1:107,10)),
+ period = factor(rep(1:10, rep(107,10))),
+ landdeg = sample(c("Type1", "Type2"), 1070, replace=T),
+ popincrease = sample(0:1, 1070, replace=T),
+ liveli =sample(0:1, 1070, replace=T),
+ popden = sample(c("Low", "Med", "High"), 1070, replace=T),
+ NDVI = rnorm(1070,100,10),
+ NDVIdecl1 = sample(0:1, 1070, replace=T),
+ NDVIdecl2 = sample(0:1, 1070, replace=T))
> head(conflict.data)
confl country period landdeg popincrease liveli popden NDVI NDVIdecl1 NDVIdecl2
1 1 1 1 Type1 1 0 Low 113.4744 0 1
2 1 2 1 Type2 1 1 High 103.2979 0 0
3 0 3 1 Type2 1 1 Med 109.1200 1 1
4 1 4 1 Type2 0 1 Low 112.1574 1 0
5 0 5 1 Type1 0 0 High 109.9875 0 1
6 1 6 1 Type1 1 0 Low 109.2785 0 0
> summary(conflict.data)
confl country period landdeg popincrease liveli popden NDVI NDVIdecl1 NDVIdecl2
Min. :0.0000 1 : 10 1 :107 Type1:535 Min. :0.0000 Min. :0.0000 High:361 Min. : 68.71 Min. :0.0000 Min. :0.0000
1st Qu.:0.0000 2 : 10 2 :107 Type2:535 1st Qu.:0.0000 1st Qu.:0.0000 Low :340 1st Qu.: 93.25 1st Qu.:0.0000 1st Qu.:0.0000
Median :1.0000 3 : 10 3 :107 Median :1.0000 Median :1.0000 Med :369 Median : 99.65 Median :1.0000 Median :0.0000
Mean :0.5009 4 : 10 4 :107 Mean :0.5028 Mean :0.5056 Mean : 99.84 Mean :0.5121 Mean :0.4888
3rd Qu.:1.0000 5 : 10 5 :107 3rd Qu.:1.0000 3rd Qu.:1.0000 3rd Qu.:106.99 3rd Qu.:1.0000 3rd Qu.:1.0000
Max. :1.0000 6 : 10 6 :107 Max. :1.0000 Max. :1.0000 Max. :130.13 Max. :1.0000 Max. :1.0000
(Other):1010 (Other):428
> dim(conflict.data)
[1] 1070 10
Pour ajuster un modèle, la fonction glm () comme @ gui11aume suggère de faire les bases ...
mod <- glm(confl~., family="binomial", data=conflict.data)
anova(mod)
... mais cela a le problème de traiter le "pays" (je suppose que vous avez le pays comme 107 unités) comme un effet fixe, alors qu'un effet aléatoire est plus approprié. Il traite également la période comme un facteur simple, aucune autocorrélation n'est autorisée.
Vous pouvez résoudre le premier problème avec un modèle d'effets mixtes linéaires généralisés comme par exemple le paquetage lme4 de Bates et al dans R. Il y a une bonne introduction à certains aspects de ceci ici . Quelque chose comme
library(lme4)
mod2 <- lmer(confl ~ landdeg + popincrease + liveli + popden +
NDVI + NDVIdecl1 + NDVIdecl2 + (1|country) +(1|period), family=binomial,
data=conflict.data)
summary(mod2)
serait un pas en avant.
Maintenant, votre dernier problème restant est l'autocorrélation sur vos 10 périodes. Fondamentalement, vos 10 points de données sur chaque pays ne valent pas autant que s'ils étaient 10 points distribués indépendants et identiques choisis au hasard. Je ne connais pas de solution logicielle largement disponible pour l'autocorrélation dans les résidus d'un modèle à plusieurs niveaux avec une réponse non normale. Il n'est certainement pas implémenté dans lme4. D'autres en savent peut-être plus que moi.