小编MDS*_*MDS的帖子

在data.table的组的第一行中分配值

我只想在的组的第一行中分配这些值data.table

例如(简体):my data.tableis DTwith the following content

x v  
1 1  
2 2  
2 3  
3 4  
3 5  
3 6 
Run Code Online (Sandbox Code Playgroud)

keyDTx
我想讲一组的每一行。

这工作正常:DT[, .SD[1], by=x]

x v  
1 1  
2 2  
3 4 
Run Code Online (Sandbox Code Playgroud)

现在,我想只分配的这些值v0

但这都不起作用:

DT[, .SD[1], by=x]$v <- 0  
DT[, .SD[1], by=x]$v := 0  
DT[, .SD[1], by=x, v:=0]
Run Code Online (Sandbox Code Playgroud)

我从程序包和提供的所有链接中搜索了R-help,但我无法使其正常运行。
我发现那里的注释说这行不通,但是没有示例/解决方案可以帮助我。

任何建议我都会很高兴。

(我非常喜欢这个程序包,我不想回到data.frame ...在这里工作)

编辑:

我想要这样的结果:

x v  
1 0  
2 0  
2 3 …
Run Code Online (Sandbox Code Playgroud)

grouping r variable-assignment data.table

6
推荐指数
2
解决办法
1495
查看次数

标签 统计

data.table ×1

grouping ×1

r ×1

variable-assignment ×1