私はこれを1日間解決しようとしています。私は線形混合モデルには新しいので、これが私の失敗を説明すると思います。 私はすぐに、説明の目的だけのために、いくつかのデータを作成している:ここで線形混合モデルでプロットされた線をR
#Data
df <- data.frame(
subject=rep(c("1","2","3","4","5","6"),each=100),
order=rep(1:20),
similarity = rep(c("Similar", "Dissimilar"), each=150,times=2),
relate = rep(c("related", "unrelated"), each=75,times=4),
stack = as.numeric(rep(c("112","155","76","88","90","122","145","102","159","233")), each=60),
target= rep(c("banana","apple","peach","pineapple","coconut","cherry"),times=10)
)
# add RT data
df$RT <- 0.02*df$order +
-6*as.numeric(df$similarity=="Similar")* as.numeric(df$stack) +
6*as.numeric(df$similarity=="Dissimilar")* as.numeric(df$stack) +
4*as.numeric(df$stack)*as.numeric(df$relate=="unrelated") +
-11*as.numeric(df$target=="banana")*as.numeric(df$order>1 & df$order<6)+
df$stack/10*rnorm(600, mean=0, sd=2)
df$RT<--1*df$RT
は私のモデルである:
##model
model=lmer(RT~similarity*relate*stack
+order + (1|subject)
+ (1|target),data=df,REML=F,control=lmerControl(optimizer = c("bobyqa")))
df$fit<-predict(model) ##add fitted values
結果:
Linear mixed model fit by maximum likelihood t-tests use Satterthwaite approximations to degrees of freedom [
lmerMod]
Formula: RT ~ similarity * relate * stack + order + (1 | subject) + (1 | target)
Data: df
Control: lmerControl(optimizer = c("bobyqa"))
AIC BIC logLik deviance df.resid
5668.6 5721.3 -2822.3 5644.6 588
Scaled residuals:
Min 1Q Median 3Q Max
-3.5247 -0.6163 0.0226 0.5944 4.0280
Random effects:
Groups Name Variance Std.Dev.
subject (Intercept) 0.0 0.00
target (Intercept) 0.0 0.00
Residual 713.2 26.71
Number of obs: 600, groups: subject, 6; target, 6
Fixed effects:
Estimate Std. Error df t value Pr(>|t|)
(Intercept) -7.46457 6.74238 600.00000 -1.107 0.269
similaritySimilar -0.86579 9.41010 600.00000 -0.092 0.927
relateunrelated 13.96619 9.43009 600.00000 1.481 0.139
stack -5.92555 0.05030 600.00000 -117.802 <2e-16 ***
order -0.06343 0.19765 600.00000 -0.321 0.748
similaritySimilar:relateunrelated -8.96977 13.33903 600.00000 -0.672 0.502
similaritySimilar:stack 12.00979 0.07024 600.00000 170.974 <2e-16 ***
relateunrelated:stack -4.12125 0.06952 600.00000 -59.283 <2e-16 ***
similaritySimilar:relateunrelated:stack 0.08997 0.09835 600.00000 0.915 0.361
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Correlation of Fixed Effects:
(Intr) smlrtS rltnrl stack order smlrtySmlr:r smlrtySmlr:s rltnr:
simlrtySmlr -0.696
relatenrltd -0.692 0.499
stack -0.895 0.661 0.662
order -0.162 -0.010 -0.026 -0.160
smlrtySmlr:r 0.487 -0.706 -0.707 -0.470 0.033
smlrtySmlr:s 0.655 -0.945 -0.472 -0.702 0.025 0.667
rltnrltd:st 0.662 -0.477 -0.945 -0.709 0.022 0.668 0.505
smlrtySml:: -0.465 0.675 0.668 0.504 -0.035 -0.945 -0.715 -0.707
明らかにモデルが奇妙に見えるかもしれません、元のデータセットを再現しようとすると時間を費やさず、ここでは共有できませんでした。 私がしたかったのは、2つの異なる条件で、RTのモデルフィッティングされたラインをスタックの関数として単純に表示することです。類似== "Dissimilar"と類似== "Similar"。これは、おそらく私のモデル理論の理解の私の不足によって妨げられるが、それを行うにはかなり簡単でなければならない、または何かが欠けている? ggplotでこれを行う方法に関するアドバイスはありますか? ありがとうございます。
おかげで、これは大きな助けです。 – Kauber