【发布时间】:2020-05-27 03:56:48
【问题描述】:
我有一个包含许多列 (50+) 的宽 data.table
一个简化的例子(有 5 列):
dt <- data.table(A = 1:10, B = 1, C = 1, D = 1, E = 1, F = 1, G = 1)
现在我想将 B 列和 D 列分成子集,直到 F。
如果我只想要 D 到 F,我可以这样做:
dt[, D:F]
但是,我想保留 B 列。我可以长期实现我想要的结果,但这是我要避免的:
dt[, c("B", "D", "E", "F")]
我的问题是是否可以使用如下语法,这显然行不通:
dt[, c("B", D:F)]
请记住,这是一个简化的示例,“不选择 A、C、G”并不能真正解决我的问题。
我一直在想这个问题。我意识到我总是可以解决很长的路,但我想知道是否有快速的方法,因为我经常遇到这个问题。
非常感谢您的回复!
【问题讨论】:
标签: r dataframe data.table subset