我是R新手,我正在練習編寫R函數。我有100個CVS單獨存儲在我的目錄中的 數據文件,並且每個文件都由它的ID標記,例如, 「1」到「100」。 我喜歡寫一個函數,將某些選定的文件讀入R,計算每個數據文件中完整情況的數目 ,並將結果排列到數據框中 下面是函數I首先我讀取「dat」中的所有文件,然後用 rbind函數,將我選擇的文件讀入data.frame中,最後我計算了使用sum(complete.cases())的完整個案數 , )。這看起來簡單,但 功能不起作用。我懷疑有一些錯誤的指數,但 還沒有想通了,爲什麼。通過各種主題的搜查,但找不到有用 答案。非常感謝!R for循環索引問題
`complete = function(directory,id) {
dat = list.files(directory, full.name=T)
dat.em = data.frame()
for (i in id) {
dat.ful= rbind(dat.em, read.csv(dat[i]))
obs = numeric()
obs[i] = sum(complete.cases(dat.ful[dat.ful$ID == i,]))
}
data.frame(ID = id, count = obs)
}
complete("envi",c(1,3,5)) `
得到錯誤和警告消息:在data.frame 錯誤(ID = ID,計數= OBS):參數意味着,不同的行數:3,5