-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
出于示例的元件的变化的位置,我有一个序列:就R如何获得在其中存在于载体中
seq = sample(c(0,1), 11, replace = T)
1 0 0 0 1 1 1 1 1 1 0
希望的输出:
1,2,5,11
尝试此:
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相结合。
感谢您的回复 –
不清楚问题是什么。输出如何与该序列匹配? –
也请使用'set.seed(...)'来保证绘制随机样本时的可重复性。 –