【发布时间】:2016-05-22 21:05:21
【问题描述】:
我的数据如下所示:
A= c(0,0,0,-1,0,0,0,1,1,1,0,0,-1,0,0,-1,-1,1,1,1,-1,0,0,0,-1,0,0,-1,-1,1,1,0,0,0,0,1,-1)
目标是提取交替的 -1 和 1。我想创建一个函数,其中输入向量包含 0,1 和 -1。理想情况下,输出会吐出所有 0 并交替出现 -1 和 1。
例如,上面示例的期望输出是:
B= c(0,0,0,-1,0,0,0,1,0,0,0,0,-1,0,0,0,0,1,0,0,-1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,-1)
A 中第 9 和第 10 个位置的两个 1 变为 0,因为我们只保留第一个 1 或 -1 出现。 A 的第 16 和第 17 位置的 -1 也因此变为 0。
谁有制作这样一个功能的好主意?
【问题讨论】:
-
为什么这个问题被否决和 vtc?用一个例子很好地解释了。
-
在我看来奇怪的值是位置 16。它从位置 15 的
0切换到-1但被删除了。为什么? -
目标是只保持唯一的 1 和 -1 来振荡。第13个位置有-1,所以在观察到下一个1之前,所有的-1都变成0。