我檢查this問題有關定義在R車型,我想什麼做的是在一個型號爲循環交換變量,這樣每一個變量是一個時間目標變量而所有其他變量都是該迭代的預測變量。的R中一個定義模型循環
df <- data.frame(customer = c(1:5), product1 = c(1,0,1,1,0), product2 = c(0,1,0,0,1), product3 = c(0,1,1,1,0))
customer product1 product2 product3
1 1 1 0 0
2 2 0 1 1
3 3 1 0 1
4 4 1 0 1
5 5 0 1 0
於是我想創建一個for循環使用3次迭代在這種情況下:
mdl <- product1 ~ product2 + product3
mdl <- product2 ~ product1 + product3
mdl <- product3 ~ product1 + product2
要在這裏澄清,我的問題我試圖創建for循環的:
for(j in 1:ncol(df)){
mdl <- df$[j] ~ df[-j] # include all variables except target variable
print(mdl)
}
這裏我得到的輸出:
df[j] ~ df[-j]
df[j] ~ df[-j]
df[j] ~ df[-j]
df[j] ~ df[-j]
雖然我預計一些諸如所需的輸出:
product1 ~ product2 + product3
product2 ~ product1 + product3
product3 ~ product1 + product2
如果你想知道爲什麼我想知道這一點。我想用它在一個for循環,運行的預測模型,如下例所示:
naiveBayes(mdl, df, type = "raw")
我希望我的問題是清楚的,希望有人可以幫助我。
我不明白你是如何獲取所需的從輸入data.frame輸出。 – MrFlick
這是你的想法嗎? http://stackoverflow.com/questions/5300595/automatically-create-formulas-for-all-possible-linear-models – MrFlick
@MrFlick的鏈接謝謝,這是接近我一直在尋找。雖然,區別在於我想要包含所有變量的所有可能組合。因此,與列產品1,產品2和產品3有如上所示,而不是9. – Floris