-1
我試圖對time_of_day
進行所有數據框列的方差分析,這是一個因素。我的其餘專欄都是雙打和同等長度的。如何在r中使用字符串作爲公式
x = 0
pdf("Time_of_Day.pdf")
for (i in names(data_in)){
if(x > 9){
test <- aov(paste(i, "~ time_of_day"), data = data_in)
}
x = x+1
}
dev.off()
運行這段代碼給了我這個錯誤:
Error: $ operator is invalid for atomic vectors
哪裏是我的代碼調用$
?我怎樣才能解決這個問題?對不起,我對r很陌生,而且很迷茫。
我的研究問題是查看一天中的時間是否對大腦中不同ROI的腦容量有影響。一天中的時間分爲早上,下午或晚上三類。
編輯:已解決 將字符串視爲公式將允許它運行,但我被建議不要有這麼多獨立的值,因爲它會誇大模型的統計結果。我不刪除此事,因爲有人與aov()
呼叫有類似的問題。
x = 0
pdf("Time_of_Day.pdf")
for (i in names(data_in)){
if(x > 9){
test <- aov(as.formula(paste(i, "~ time_of_day")), data = data_in)
}
x = x+1
}
dev.off()
我的條件變量是'time_of_day',其值爲1(上午),2(下午)或3(夜間)。因變量是大腦不同區域的體積。我想用'time_of_day'分析大腦中104個不同的區域。這就是爲什麼我循環遍歷數據框中的所有列。我需要改變以獲得此anova的工作? – Chriscross
另外,你是什麼意思,我沒有一個ANOVA集成到我的aov()調用? – Chriscross
好吧,我試過這個,它運行沒有錯誤,但我不知道爲什麼?如果(x> 9)測試<-aov(data_in [[i]),則可以使用(x = 0, pdf(「ROI vs一天中的時間(MF).pdf」) ]〜DATA_IN $ TIME_OF_DAY) 打印(概要(測試)) } X = X + 1 } dev.off()' – Chriscross