2016-10-08 10 views
-3

出于示例的元件的变化的位置,我有一个序列:就R如何获得在其中存在于载体中

seq = sample(c(0,1), 11, replace = T) 
1 0 0 0 1 1 1 1 1 1 0 

希望的输出:

1,2,5,11 
+2

不清楚问题是什么。输出如何与该序列匹配? –

+2

也请使用'set.seed(...)'来保证绘制随机样本时的可重复性。 –

回答

2

尝试此:

vec <- c(1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0) 
c(1, which(diff(vec)!=0)+1) 
#[1] 1 2 5 11 

检查是否diff()不同于零被用于检测在序列中的变化。发生更改的索引用which()检索。由于diff()将向量的长度减1,并且所需的输出包含1作为第一个索引,所以结果与前导1以及索引号的偏移+1相结合。

+1

感谢您的回复 –

相关问题