首页 > 解决方案 > R 中线性、指数和幂曲线的回归建模

问题描述

请注意这是交叉发布的:https ://stats.stackexchange.com/questions/427649/regression-modelling-of-linear-exponential-and-power-curves

我正在尝试使用不同的数学函数对试验(试验 1-5)中的反应时间(和其他)数据进行建模。具体来说,我通过转换数据使用线性混合效应模型对线性、指数和幂函数进行建模,并使用 AIC/BIC 来比较拟合:

Linear: lmer(ReactionTime ~ Trial + (Trial | Subjects), data = lmerdata)

Exponential: lmer(log(ReactionTime) ~ Trial + (Trial | Subjects), data = lmerdata)

Power: lmer(log(ReactionTime) ~ log(Trial) + (Trial | Subjects), data = lmerdata)

通过这样做,指数和幂方程意味着与线性方程不同的误差分布。其结果是相对于线性拟合膨胀指数和幂函数拟合。

有没有办法使用 lmer() 来解决这个问题?或者,如何使用非线性混合效应建模来做到这一点?我尝试使用 nlme()、nlmer()、glmer() 来实现,但所有方法最终都会遇到问题(例如,不收敛)。

这是示例数据:

#Create Empty Matrix
lmerdata <- matrix(NA, 20, 3)

#Add Participant IDs
lmerdata[, 1] <- rep(1:4, 5)

#Add Trial Counts
lmerdata[, 2] <- as.numeric(sort(rep(1:5, 4)))

#Add Reaction Time Data
lmerdata[, 3] <- c(2.184308,2.754287,2.396167,1.305267,1.943866,1.70844,2.586035,1.261954,1.768063,1.76659,2.242142,1.489634,1.62544,1.677268,2.378175,1.550744,1.481052,1.424327,1.738102,1.247097)

#Name Columns
colnames(lmerdata) <- c('Subjects', 'Trial', 'ReactionTime')

#Convert to Data Frame
lmerdata <- as.data.frame(lmerdata)

#Turn Subjects into Factor
lmerdata$Subjects <- as.factor(lmerdata$Subjects)

标签: rregressionlme4mixed-models

解决方案


推荐阅读