環路輸出我[R初學者,下面是我的代碼:[R存儲在矢量
complete <- function(directory, id = 1:332) {
# Read through all the csv data file
for (i in id) {
i <- sprintf("%03d", as.numeric(i))
data <- read.csv(paste(directory, "/", i, ".csv", sep =""))
good <- complete.cases(data) # Eliminating the NA rows
cases <- sum(good == TRUE) # add complete value
}
data.frame(id = id, nobs = cases)
}
當我打印輸出
id nobs
1 1 402
2 2 402
3 3 402
4 4 402
5 5 402 (incorrect)
,如果我只是打印情況
[1] 117
[1] 1041
[1] 243
[1] 474
[1] 402
所以正確的輸出應該是
id nobs
1 1 117
2 2 1041
3 3 243
4 4 474
5 5 402
我意識到它只從(案例)中取得最後的價值。
我的問題是如何將(情況)輸出存儲到向量 ,所以當我調用data.frame函數時,它將返回正確的輸出。
感謝
謝謝,你能解釋一下 「NULL」 嗎? – user1804925
它會在您的工作區中創建一個對象「cases」,它實際上是空的。在for循環中,這個對象'增長'到一個向量。我必須同意@Sven Hohenstein,這不是一個非常有效的解決方案,但是我想保留與你的問題相似的代碼。 – EDi