【问题标题】:Variable length error in loop in rr中循环中的可变长度错误
【发布时间】:2017-07-03 12:49:06
【问题描述】:

我正在尝试循环输入 r 以获得多个 Anova 结果。但是我不断收到以下错误:

Error in model.frame.default(formula = col ~ Total, data = phil_data, 
:variable lengths differ (found for 'Total')

我不明白这是从哪里来的,因为 Anova 在循环之外工作(请参阅代码)。非常感谢任何帮助。

multi.hist(phil_data[,c(7:23)],density=TRUE,freq=TRUE,bcol="cyan",main=" ")
anovaresult <- anova(aov(x2 ~ Total, data=phil_data))
print(anovaresult)
anovaresult <- anova(aov(x1 ~ Total, data=phil_data))
print(anovaresult)

for(i in c(3, 7:23)){
    col <- colnames(phil_data)[i]
    print(col)
    anovaresult <- anova(aov(col~Total,data=phil_data))
    print(anovaresult)
}

【问题讨论】:

    标签: r variables anova


    【解决方案1】:
        multi.hist(phil_data[,c(7:23)],density=TRUE,freq=TRUE,bcol="cyan",main=" ")
    anovaresult <- anova(aov(x2 ~ Total, data=phil_data))
    print(anovaresult)
    anovaresult <- anova(aov(x1 ~ Total, data=phil_data))
    print(anovaresult)
    
    for(i in c(3, 7:23)){
        col[i] <- colnames(phil_data)[i]## add the i index
        print(col[i])
        anovaresult <- anova(aov(phil_data[,col[i]]~Total,data=phil_data))
        print(anovaresult)
    }
    

    【讨论】:

    • 非常感谢,但是它只是将错误更改为:model.frame.default 中的错误(formula = phil_data[, col[i]] ~ Total, data = phil_data, : invalid type ( list) 用于变量 'phil_data[, col[i]]'
    • 我不知道你的数据集的类型,但对我来说这很好用:for(i in c(1:5)){ col[i] F) disp 1 808.89 808.89 76.513 9.38e-10 *** Residuals 30 317.16 10.57 ---
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-28
    • 1970-01-01
    • 2014-07-27
    • 1970-01-01
    • 1970-01-01
    • 2018-08-30
    相关资源
    最近更新 更多