【发布时间】:2020-02-06 14:47:59
【问题描述】:
我想向量化(apply)矩阵X 上的which 操作,如以下for 循环所示,结果向量ind:
X = matrix( 1:20, 4, 5 )
V = sample( 1:20, 4 )
ind = numeric()
for( i in 1:nrow(X) ) ind[i] = max( c(0, which(X[i,] < V[i]) ))
该操作在ind 中为X 中的每一行返回最大值小于V 的X-row-corresponding 元素所指示的值的元素的索引。
操作max 将所有符合条件的索引的向量映射到一个标量。或者,我会对返回的操作感到满意,例如所有索引的list(我可以lapplymax)。
【问题讨论】:
标签: r vectorization