Đây thực sự là một vấn đề cực kỳ phức tạp và là một câu hỏi khó từ giảng viên của bạn!
Về cách bạn sắp xếp dữ liệu của mình, hình chữ nhật 1070 x 10 là ổn. Ví dụ: trong 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
Để phù hợp với một mô hình, hàm glm () như @ gui11aume gợi ý sẽ làm những điều cơ bản ...
mod <- glm(confl~., family="binomial", data=conflict.data)
anova(mod)
... nhưng điều này có vấn đề là nó đối xử với "quốc gia" (Tôi giả sử bạn có quốc gia là 107 đơn vị của mình) dưới dạng hiệu ứng cố định, trong khi hiệu ứng ngẫu nhiên thì phù hợp hơn. Nó cũng coi thời gian là một yếu tố đơn giản, không cho phép tự tương quan.
Bạn có thể giải quyết vấn đề đầu tiên với mô hình hiệu ứng hỗn hợp tuyến tính tổng quát như trong gói lme4 của Bates et al trong R. Có một giới thiệu hay về một số khía cạnh của vấn đề này ở đây . Cái gì đó như
library(lme4)
mod2 <- lmer(confl ~ landdeg + popincrease + liveli + popden +
NDVI + NDVIdecl1 + NDVIdecl2 + (1|country) +(1|period), family=binomial,
data=conflict.data)
summary(mod2)
sẽ là một bước tiến.
Bây giờ vấn đề cuối cùng còn lại của bạn là tự động tương quan trong 10 tiết của bạn. Về cơ bản, 10 điểm dữ liệu của bạn trên mỗi quốc gia không có giá trị nhiều như thể chúng là 10 điểm phân phối độc lập và được xác định ngẫu nhiên. Tôi không biết về một giải pháp phần mềm có sẵn rộng rãi để tự tương quan trong phần dư của một mô hình đa cấp với phản hồi không bình thường. Chắc chắn nó không được thực hiện trong lme4. Những người khác có thể biết nhiều hơn tôi.