【发布时间】:2020-06-14 14:55:32
【问题描述】:
我想根据每行中不同的值范围更新列(加 1)。我逐行迭代的尝试结果很慢。我举一个小例子。
M <- matrix(0,nrow = 50*10^3,ncol = 100)
library(data.table)
M <- as.data.table(M)
n <- nrow(M)
set.seed(4234)
M[, `:=` (a=sample(50,n,replace = T),
b=sample(50:100,n,replace = T))]
for (x in 1:n)
set(M,i=x,j=M[['a']][x]:M[['b']][x], value = 1L)
有什么方法可以加快计算速度?
【问题讨论】:
-
请在代码中注明
library调用,这次我帮你了。 -
上下文+最终目标是什么?
标签: r for-loop data.table