【发布时间】:2016-01-24 22:33:24
【问题描述】:
我如何在一张表中获取 'x' 的值对应于 'y' 和 'z' 的前 k 个值?
> dt <- data.table( x = letters[c(1, 1, 3, 2, 3, 1, 1)],
y = c(1, 2, 1, 2, 2, 1, 1), z = c(1, 2, 3) )
> dt
x y z
1: a 1 1
2: a 2 2
3: c 1 3
4: b 2 1
5: c 2 2
6: a 1 3
7: a 1 1
这种情况可以通过连接解决,还是我必须遍历不是“x”的列?
> requested.output
var x Val
1: y a 2
2: y b 2
3: y c 2
4: z c 3
5: z a 3
6: z a 2
【问题讨论】:
-
不应该是 4 5 和 6 而应该是 4: z a 3 5: z b 1 6: z c 3
标签: r join data.table