[英]make for loop faster in R without parallalizing
我有以下非常簡單的循環操作,需要從1循環到50,000。 盡管循環非常簡單,但R的運行速度卻很慢,所以我想知道是否有任何操作可以使循環更快,但是我不喜歡並行解決方案,因為我的計算機只有2個處理器,
full3 = fullData
for(i in 1:dim(fullData)[1]) {
full3[i,923] <- sum(as.numeric(full3[i, 879:912]))
print(i)
}
您應該rowSums
使用rowSums
操作:
full3 <- fullData
# a[, b] selects the entire column 'b' from data.frame 'a'
full3[, 923] <- rowSums(as.numeric(full3[, 879:912]))
應該這樣做。 rowSums
同樣會計算子集的數據的每一行的總和data.frame
full3[, 879:912]
。 該結果存儲在列923中
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.