这个问题是similar like this ..但这是完全不同的......
这里的信号应该是这样的
-1 -1 -1 -1 -1 -1 -1 -1 -1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 -1
-1 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 0 -1 -1 -1 -1 -1 0
0 1 1 1 1 1 1 1 1 1 1 1 1 1
比如说
如果0出现则必须等到所有值之间的1都应为-1,就像它应该在那里一样。
它会看这个..
-1 -1 -1 -1 -1 -1 -1 -1 -1 0 -1 -1 -1 1 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 1 0 -1
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1 0 -1 -1 -1 -1 -1 1 -1 0 -1 -1 -1 -1
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
应该像买卖买卖这样..
帮助将不胜感激......
答案 0 :(得分:1)
转换的规则是:如果0的序列后跟1,则将前0设置为-1,将其他0设为-1。如果0的序列后跟-1,则将所有0设置为-1
相当于
摆脱-1,因为它们没有被修改,也不会影响其他值。现在我们的序列只包含0和1。 然后,将所有0和1设置为相同的值-1。
x[x!=-1][sequence(rle(as.character(x[x!=-1]))$lengths)!=1] = -1