Исправление графика для прогнозируемых значений многоуровневой логит-регрессии в R - PullRequest
0 голосов
/ 06 мая 2019

Я использую данные World Values ​​Survey, чтобы исследовать взаимосвязь между предубеждением к иммигрантам (измеряется как упоминание того, что он не хочет, чтобы иммигрант был соседом - двоичный 0/1) и размером города (категорично), контролируя дляряд других факторов.

Я провел многоуровневую логистическую регрессию со случайными перехватами по странам.

twolevellogit <- glmer(V39 ~ as.factor(town_size) +as.factor(education) + as.factor(lower_class) + immigrant_parent  + age + female + (1 | V2), family = binomial("logit"), data = WVS6a)

Я хочу построить график своих результатов, показывая прогнозируемые значения вероятности того, что кто-то из каждого размера города ответит, что он против жизни рядом с иммигрантом (V39).

predprob <- fitted(twolevellogit)

predlogit <- logit(predprob, inverse = TRUE) 

datapred <- unique(data.frame(cbind(predlogit = predlogit, V2 = WVS6a$V2, town_size = WVS6a$town_size)))


xyplot(predlogit ~ town_size, data = datapred, groups = V2, type = c("l"), xlim= c(1, 8), ylim= c(0.45, 0.7))

Мой график, однако, выглядит следующим образом.Очень грязно и запутанно - насколько я знаю, это должно выглядеть как 42 параллельные линии.Я думаю, что, возможно, проблема связана с отсутствующими данными (в данных много NA), однако я не могу решить ее с помощью каких-либо команд na.action.

https://drive.google.com/file/d/1tXsQ2J-jQwqlr4BFMYaIRZ3lermRNmvc/view?usp=sharing

Мне было интересно, если бы кто-нибудь посоветовал, что это было бы замечательно, дополнительно совет, как сделать этот график с помощью ggplot2, очень приветствуется.

...