我需要确定矩阵每一行中特定值的第一次和最后一次出现的列索引。例如,如果我的矩阵如下:
0 10 10 10 0 0
10 10 10 0 0 0
0 0 0 0 10 10
我需要一个向量,其中包含每行中第一次出现 10 的列索引和最后一次出现的向量,结果向量将分别为(2,1,5)
和(4,3,6)
。
我编写了以下函数,将其与 apply 函数一起使用以查找第一个匹配项:
Myfunc <- function(x){which==10)[1]
Myfirst <- apply(x,1,Myfunc)
但是,我似乎无法弄清楚如何获得最终出现的向量。有人可以告诉我如何使用该which()
功能来做到这一点或建议一种替代方法吗?