2016-09-20 66 views
1

我有一個混合模型(使用nlme)與時間和時間二次(time2)。我如何讓sjp.int(sjplot)請求將它繪製成曲線?曲線圖與sjplot

model = lme(MR ~ Age* time + sex*time + ed* time+ time* HMD+time2*HMD, random=~1|subject, na.action="na.omit",data=mydata);summary(model) 

我叫sjplot爲:

sjp.int(model, type="eff", swap.pred=T, mdrt.values="quart", show.ci=T) 

回答

0

你的二次項應具有相同的名稱,即你應該使用poly()I()^2。見下面的例子:

library(sjPlot) 
library(sjmisc) 
data(efc) 
fit <- lm(tot_sc_e ~ c161sex * e17age + c161sex * I(e17age^2), data = efc) 
sjp.int(fit) 

enter image description here

注意,預測爲交互項的次序是重要的,應是式中的相同(即,在上述情況下,c161sex至上,然後e17age )。

+0

嗨丹尼爾,感謝您的幫助,這確實是訣竅! 還有一個問題,有沒有一種方法可以繪製三維交互(例如HMD *時間*組),然後在兩個組之間分配一個影響HMD *時間的繪圖?我試着用facet.grid = TRUE,但它給了我奇怪的情節(我試圖將該因子轉換爲數字,但這沒有幫助) – user6121484

+1

三方交互尚未實現,請參閱https:// github .COM/sjPlot/devel的/問題/ 103。仍然需要一些概念性思維 – Daniel