【发布时间】:2020-09-19 22:58:50
【问题描述】:
目前我有一个这样的data.table:
item dummyvar
4q7C0o 1
2BrKY63 1
3drUy6I 1
G5ALtO 1000
G5G859 1000
PAP589 2000
使用定义的函数,我发现dummyvar 发生显着变化的行位于名为imbalance = 4 6 的数字向量中。我想做的是在我的数据表中创建一个新列,以便imbalance 给出的给定数字下方的所有行都在给定的类中,例如。像这样:
item dummyvar Class
4q7C0o 1 1
2BrKY63 1 1
3drUy6I 1 1
G5ALtO 1000 2
G5G859 1000 2
PAP589 2000 3
【问题讨论】:
-
好的,我给出了一个答案,意识到我不明白你的
imbalance-part。你能更精确一点吗?我只是计算了这些组,但不知道您要做什么。 -
也许是
your_data_table[, Class := cumsum(.I %in% imbalance)]?我假设imbalance是您希望Class增加的行号的向量。 (此版本从 0 开始,但您可以在其上粘贴+ 1以从1开始) -
@Oliver 啊,我明白了。我因为跑题而删除了我的答案。
-
@MartinGal 相反,感谢您抽出宝贵时间评论和检查我的问题。我很感激
标签: r data.table grouping