我试图从满足特定条件的数据集中删除变量。目前我正在使用一个两步过程来汇总,然后删除满足摘要逻辑操作的列,如下所示:
library(tidyverse)
data <- tibble(
date = seq.Date(as.Date("2012-01-01"), length.out = 5, by = 'day'),
x = rep(1, times = 5),
y = 1:5
)
tmp <- data %>%
select(-date) %>%
summarise_all(funs(length(unique(.))))
tmp <- names(tmp)[tmp<2]
data <- select(data, -one_of(tmp))
rm(tmp)
然后重复sd的过程,意思是等等。我只是想知道是否有更简洁的方法在一个管道集中完成这个。此外,我有一个非常宽的数据帧,所以这需要一段时间才能运行所以任何速度的想法也将受到赞赏。