gpt4 book ai didi

data.table 中的行号

转载 作者:行者123 更新时间:2023-12-05 03:06:36 25 4
gpt4 key购买 nike

我有这个简单的任务要做,想象一下我有这张表:

   var1
1: X
2: X
3: Y
4: X
5: Z
6: Y

我想像这样创建一个新变量:

   var1 nth
1: X 1
2: X 2
3: Y 1
4: X 3
5: Z 1
6: Y 2

实际上我有很多变量很多行。所以我的实际解决方案是(效果很好):

dt[, flag := 1]
dt[, nth := frank(flag, ties.method = "random"), by = .(var1)]

但这很慢,而且我对排名并不感兴趣。(frank 必须排序和排名,我只需要一个简单的东西,即索引)。

我想出了这个解决方案,但行不通:

dt[, pos := .I, by = .(var1)]

对于这项任务,您有任何快速直接的解决方案吗?

谢谢

最佳答案

dt[, nth := row.names(.SD), by = var1]

关于data.table 中的行号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49032276/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com