dplyr :: select_if(。,is.numeric)超级慢

时间:2017-07-06 16:40:49

标签: r performance dplyr

这(部分y = ...)运行异常缓慢:

library(dplyr)
n <- 10000
p <- 1000


x <- as.tbl(as.data.frame(matrix(rnorm(n * p), nc = p)))
y = x %>%
  select_if(., is.numeric)
事实上,它是我数据清理代码中最小的一部分。有更好的方法吗?

(dplyr 0.7.1)

1 个答案:

答案 0 :(得分:2)

尽管更笨重,但速度更快:

x %>% select(which(lapply(x,class) == "numeric"))