Julia 中缺少值的混合模型

MixedModel with missing values in Julia

当响应变量具有 missing 时,不能 运行 混合模型。 我得到 ERROR: KeyError: key missing not found

以前 Julia 可以运行这没有问题。

我使用 CSV.read 加载我的数据,但下面的示例使用来自名为 languageR

的 R 包的数据集
using DataFrames, MixedModels, GLM, RDatasets, RData, RCall, Missings, CSV

#load data
lexdec = rcopy(R"languageR::lexdec")

#replace one value with missing
lexdec.rt = recode(lexdec.RT, 6.905753 => missing)

#run mixedmodel
fm = fit(MixedModel, @formula(rt ~ 1 + Class*NativeLanguage*Frequency + Trial + (1|Subject) + (1|Word)), lexdec)

ERROR: KeyError: key missing not found
#plus a long Stacktrace

如果缺少自变量(例如频率),则会出现相同的错误。想要一个可以解决两种情况下缺失的解决方案。

MixedModels 的开发版本可以处理缺失值。看起来它只是删除了缺少值的行。这与 R 中的 na.omit 相同。

#install development version
add https://github.com/dmbates/MixedModels.jl

julia> #run mixedmodel
       fm = fit(MixedModel, @formula(rt ~ 1 + Class*NativeLanguage*Frequency + Trial + (1|Subject) + (1|Word)), lexdec)
Linear mixed model fit by maximum likelihood
 rt ~ 1 + Class + NativeLanguage + Frequency + Trial + Class & NativeLanguage + Class & Frequency + NativeLanguage & Frequency + Class & NativeLanguage & Frequency + (1 | Subject) + (1 | Word)
   logLik    -2 logLik      AIC         BIC     
   500.93350 -1001.86699  -977.86699  -912.90658

Variance components:
            Column     Variance    Std.Dev.  
Word     (Intercept)  0.0023721041 0.04870425
Subject  (Intercept)  0.0166347779 0.12897588
Residual              0.0290821397 0.17053486
 Number of obs: 1658; levels of grouping factors: 79, 21

  Fixed-effects parameters:
───────────────────────────────────────────────────────────────────────────────────────────────
                                                      Estimate   Std.Error     z value  P(>|z|)
───────────────────────────────────────────────────────────────────────────────────────────────
(Intercept)                                        6.52805      0.0594568   109.795      <1e-99
Class: plant                                      -0.0575706    0.0630526    -0.913056   0.3612
NativeLanguage: Other                              0.378076     0.0753413     5.01817    <1e-6 
Frequency                                         -0.0371412    0.00860268   -4.3174     <1e-4 
Trial                                             -0.000233949  9.0215e-5    -2.59324    0.0095
Class: plant & NativeLanguage: Other              -0.108593     0.0685904    -1.58322    0.1134
Class: plant & Frequency                           0.00893183   0.0130981     0.68192    0.4953
NativeLanguage: Other & Frequency                 -0.0398737    0.00936592   -4.25732    <1e-4 
Class: plant & NativeLanguage: Other & Frequency   0.0078122    0.014241      0.54857    0.5833
───────────────────────────────────────────────────────────────────────────────────────────────