在R中,计算2个值之间长度的最有效方法是什么。例如,我有矢量x,它们都是从1到100中随机选择的,我怎么能找出第一个“2”和第一个“40”之间的长度, X =(1,2,的 3,4,5,6,7 下,40,1,2,的 3,21,4,1,23,4 下,43 ,23,4,12,3,43,5,36,3,45,12,31,3,4,23,41,23,5,53,45,3,7,6,36) 对于这个向量,答案应该是5和6
答案 0 :(得分:5)
我不确定我到底知道你想要什么,但这是一种方法
x<-c(1,2,3,4,5,6,7,40,1,2,3,21,4,1,23,4,43,23,4,12,3,43,5,36,3,45,12,31,3,4,23,41,23,5,53,45,3,7,6,36)
first2 <- which(x==2)[1]
first40 <- which(x>=40)[1]
first40 - first2 - 1
> 5
sec2 <- which(x==2)[2]
sec40 <- which(x>=40)[2]
sec40 - sec2 - 1
> 6