gpt4 book ai didi

r - 如何用 RHS 上的矩阵项理解/扩展 r 公式

转载 作者:行者123 更新时间:2023-12-05 07:26:01 26 4
gpt4 key购买 nike

我一直在使用 knots() 函数在 lme4 中进行分段混合效应增长曲线回归 https://stats.stackexchange.com/questions/13361/fitting-piecewise-linear-curves-with-lmer创建结,然后像这样调用 lmer:

> df$knot<-knots(df$time,seq(1.5,3.5,.5)

> lmer(outcome ~ predictor*knot + (1+knot|id), data=df)

这很好用。 str(df$knot) 显示它是一个矩阵:

num [1:1492895, 1:5] 0 0 0 0 0 0 0 0 0 0 ...
- attr(*, "dimnames")=List of 2
..$ : NULL
..$ : chr [1:5] "1.5" "2" "2.5" "3" ...

为了提高速度,我想改用 Julia(通过 JuliaCall)来拟合这些模型,但 Julia 不像 R 那样理解矩阵 RHS。

那么,我的问题是:R lm/lmer 如何理解公式 RHS 上的矩阵,我能否将矩阵“扩展”为常规向量列在数据框中,这样 Julia 就不会提示了?

我试过:

> df$knot1<-df$knot[,1]

> ...

> df$knot5<-df$knot[,5]

然后使用公式

outcome ~ predictor*(knot1+knot2+knot3+knot4+knot5) + (1+knot1+knot2+knot3+knot4+knot5|id)

是吗? R 如何处理 RHS 矩阵预测器?

最佳答案

基于运行具有较小数据集的测试模型,看起来将矩阵扩展为五个虚拟变量确实按预期工作,R 和 Julia 产生相同的结果(但 Julia 运行 6 分钟,lme4 大约 1 分钟) 5% 的数据子集上的相同随机截距和斜率模型小时)。

关于r - 如何用 RHS 上的矩阵项理解/扩展 r 公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54565228/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com