小编pha*_*pha的帖子

如何重写循环以在 R 中运行得更快?

给定 > 900,000 行的数据集,其中length(duplicates) = >300,000,以下循环在 R 中运行需要大约 4 小时,这是不可接受的。

for(i in duplicates) {
  couple_table <- filter(data, pnr == i) # filter patients
  min_date <- min(couple_table$date)     # determine date of first operation
  max_date <- max(couple_table$date)     # determine date of second operation
  
  data$first[data$pnr == i & data$date == min_date] <- 1  # assign 1 to column first
  data$second[data$pnr == i & data$date == max_date] <- 1 # assign 1 to column second
}
Run Code Online (Sandbox Code Playgroud)

如何调整此代码以在 R 中运行得更快?我看过*apply但我一点也不熟悉,有什么想法吗?

虚拟数据: …

r lapply

3
推荐指数
1
解决办法
90
查看次数

标签 统计

lapply ×1

r ×1