簡體   English   中英

使R中的循環更快而不會並行化

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM