如果我有一个向量,我可以获得低于某个值的第一次出现:
test <- c(0.5,0.8,0.1,0.08,0.06,0.04)
which(test<0.1)[1]
正确地给出了答案4
。但是,如何在矩阵的每一列中获得第一次出现,例如以下 2 列矩阵中低于 5 的第一次出现:
test2 <- matrix(c(5,8,3,4,7,5,6,2),ncol=2)
使用apply
withwhich
返回一个列表:
> apply(test2<5,2,which)
[[1]]
[1] 3 4
[[2]]
[1] 4
使用apply
withwhich.min
返回1
所有列时:
> apply(test2<5,2,which.min)
[1] 1 1
然而,我想要的应该只是返回[1] 3 4
- 我错过了一些明显的东西吗?