【发布时间】:2017-05-29 15:07:18
【问题描述】:
有一点我有很多问题:假设我有一个随机的 10x10 矩阵,其列 a 如下所示。我现在要做的是排除a 列中包含零的任何行。此外,必须排除两个连续零之后的任何值,以便b 是我想要的目标向量。
a <- c(13, 7, 2, 0, 4, 3, 0, 0, 5, 8)
b <- c(13, 7, 2, 4, 3)
我已经尝试将diff 函数与不同的lags 一起应用,但到目前为止还没有真正奏效。感谢您的帮助!
第二个例子:d <- c(0, 0, 0, 0, 0.8, 0, 0, 0.4, 0, 0, 0.5, 0.1, 0, 0.1, 0.1)
不应包含前十个元素。也许,我忘了提到我想在第一个连续的两个零之后排除所有值。
【问题讨论】:
-
在第二个例子中,那么任何元素都不会被包含,对吧,因为开头有4个连续的0?如果它只有 2 个连续的 0,那么在第 5 个元素之后,即。 0.8,有2个连续的0对不起,我很困惑你的
first ten elements should not be included -
0.8 0.4 0.5 0.1 0.1 0.1 是它吐出来的。只是 0.8/0.4 太多了,它不排除前两个缺点之后的任何值。零(从后面开始)。问题是我必须开始排除在这个向量上向后开始的零,例如,如果你理解我的意思:保持 0.1,跳过零,保持 0.1 和 0.5,仅此而已,因为后面有两个零
-
正如我在前面的评论中提到的,前 2 个连续的 0 出现在 0.8 之后。你的预期输出是什么
-
0.5 0.1 0.1 0.1 是我想要的
-
在你的第二个例子中,不是 0.5 在两个连续的 0 之后,因此应该被删除吗?