假设你有一个像这样的data.frame:
x <- data.frame(v1=1:20,v2=1:20,v3=1:20,v4=letters[1:20])
Run Code Online (Sandbox Code Playgroud)
您如何仅选择x中的数字列?
如何根据正则表达式选择data.table的列?考虑一个简单的例子如下:
library(data.table)
mydt <- data.table(foo=c(1,2), bar=c(2,3), baz=c(3,4))
Run Code Online (Sandbox Code Playgroud)
有没有办法根据正则表达式使用数据表中的列bar和baz来自数据表?我知道以下解决方案有效,但如果表格更大,我想选择更多变量,这很容易变得麻烦.
mydt[, .(bar, baz)]
Run Code Online (Sandbox Code Playgroud)
我希望有类似的东西matches(),dplyr::select()但只能通过参考.
为什么这不起作用data.table?
它适用于data.frame.有没有办法用数据表做到这一点?
x <- data.table(v1=1:20,v2=1:20,v3=1:20,v4=letters[1:20])
y <- x[,sapply(x,is.numeric)]
Run Code Online (Sandbox Code Playgroud)
返回:
v1 v2 v3 v4
TRUE TRUE TRUE FALSE
Run Code Online (Sandbox Code Playgroud)