需要在循環的每次迭代中存儲函數調用返回的結果。從函數中存儲結果
for (i in 1:x)
{
datax <- trainingdata[[i]]
levels(datax$label) <- c(-1, 1)
train_x<-datax[, -1]
train_x<-data.matrix(train_x)
trainy<-datax[, 1]
s_x<-svm.fs(train_x, y=trainy, fs.method="scad",
cross.outer=0, grid.search="discrete",
lambda1.set=lambda1.scad, parms.coding="none",
show="none", maxIter=1000, inner.val.method="cv",
cross.inner=5, seed=seed, verbose=FALSE)
# Store the result s_x
}
s_x需要與名稱一起存儲(它已經存在於一個向量「名稱」中)。
我曾嘗試以下:
s_x_results <- data.frame(x=names, y=data.frame(length(trainingdata)))
for (i in 1:x)
{
datax <- trainingdata[[i]]
levels(datax$label) <- c(-1, 1)
train_x<-datax[, -1]
train_x<-data.matrix(train_x)
trainy<-datax[, 1]
s_x<-svm.fs(train_x, y=trainy, fs.method="scad",
cross.outer=0, grid.search="discrete",
lambda1.set=lambda1.scad, parms.coding="none",
show="none", maxIter=1000, inner.val.method="cv",
cross.inner=5, seed=seed, verbose=FALSE)
s_x_results[i]$y <- s_x
}
,但我得到的錯誤信息:
Error in `$<-.data.frame`(`*tmp*`, "scad.fix", value = list(classes = c(1L, :
replacement has 11 rows, data has 91
的最終目標s_x_results被保存在一些文件今後的對應。
是否要將's_x'單獨存儲在每個迭代的獨立對象中,或者在某種列表中進行組合? – 2013-02-25 08:04:21
我想將所有結果存儲在一個對象s_x_results中。謝謝 – Shahzad 2013-02-25 08:05:14
s_x的結構是什麼? – alexwhan 2013-02-25 08:09:03