【发布时间】:2016-09-01 09:06:54
【问题描述】:
我有一个这样的数据表:
z
a b negflag
1: 1 41 0
2: 2 61 0
3: 3 623 0
4: 4 -12 1
5: 5 10 0
6: 6 15 0
7: 7 16 0
8: 8 -9 1
9: 9 31 0
10: 10 10 0
我想做的是在“negflag”旁边添加一列,它告诉我b列中是否有一个正值,之前2行。
像这样:
a b negflag posflag
1: 1 41 0 0
2: 2 61 0 1
3: 3 623 0 1
4: 4 -12 1 0
5: 5 10 0 0
6: 6 15 0 1
7: 7 16 0 1
8: 8 -9 1 0
9: 9 31 0 0
10: 10 10 0 0
因此,如果在负数发生之前存在正值 1 和 2 行(含),我希望另一列给出 1。
问候
【问题讨论】:
-
最后一个值不应该是1吗?
-
我只关心它是否出现在 b 列中的负数之前 1 或 2 行。
-
那么子设置到底发生在哪里?同样在您的示例中,您首先声明:“如果 b 列中存在正值,则之前为 2 行。”,然后您声明“如果在负值之前有 1 和 2 行(包括)正值,则给出 1发生了。”在上面的评论中你说“之前有 1 或 2 行”......是哪一个?如果是 1 OR 2 不都是 1 吗?
标签: r data.table