0
在R中我使用二項因變量擬合個人級別數據的GLM(logit)。在R中彙總個體級別的glm-fit
但是,我想繪製一個聚合水平上的擬合(即在y軸上的成功百分比)。既要繪製已實現數據的分散(聚合)和迴歸線,最簡單的方法是什麼? 我已經嘗試過使用stat_smooth()的ggplot,但是如果我在聚合級別上進行分散,那麼glm也將適用於此聚合級別。
library(datasets)
data(mtcars)
fit <- glm(vs ~ mpg + cyl + mpg:cyl + disp + drat, family=binomial(link='logit'), data=mtcars)
mtcars_agg <- mtcars %>%
group_by(carb) %>%
summarise_each(funs(mean))
form <- formula("mtcars$vs ~ mtcars$mpg + mtcars$cyl + mtcars$mpg:mtcars$cyl + mtcars$disp + mtcars$drat")
ggplot(mtcars_agg, aes(x=mpg, y=vs)) + geom_point() +
stat_smooth(data=mtcars, method="glm", formula = form, method.args=list(family="binomial"), se=FALSE)
有沒有人知道如何處理這個? 如果我不指定在stat_smooth調用公式,有兩件事情,又不是我想怎麼看呢:
- 它只是需要
y ~ x
的公式。不過,我也想包含交互變量。 - 我想適合個人層面的數據,而不是聚合層面的數據。
不指定公式,劇情是這樣的:
首先,可以爲您提供您所需要的情節任何的例子嗎?其次,爲什麼在你的'ggplot'中_carb_是獨立變量,而在你的'glm()中_carb_沒有被包含作爲變量? ggplot中的 – MikolajM
x應該是_mpg_,現在已經編輯過了。此外,我插入了我需要的情節,雖然這個情節只是基於y〜x,而我想指定更多的風險驅動程序而不僅僅是x。 – Z117
我認爲''stat_summary()'你只能指定一個預測變量/只有一個x。此外,如果你想要顯示你的glm的方程,那你有5個不同的預測器,那麼你需要有一個5維的情節,什麼是不可能的。我的解決方案是使用'predict()'預測不同_mpg_的_vs_值,而其他變量是常量 – MikolajM