我有一个棘手的问题。我有一个包含 1000 多个变量的数据框,并希望使用 fp 平滑函数使每个变量适应年龄。我知道如何将 gamlss() 用于特定变量 (vari),但是明确地重复此操作超过 1000 次是不切实际的。此外,我想在一个图中绘制所有 1000 个变量的拟合。我所做的是:
variables <- colnames(data)[7:dim(data)[2]]
for(vari in variables) {
print("ROI is:")
print(vari)
model_fem <- gamlss(vari ~ fp(age), family=GG, data=females)
但我得到了错误:
Error in model.frame.default(formula = vari ~ fp(age), data = females) :
variable lengths differ (found for 'fp(age)')
我认为棘手的部分来自 fp()。我尝试使用 as.formula,它没有用。也因为 females$vari 返回 NULL,这就是我们得到这个错误的原因。你有什么解决办法吗?谢谢