我有一个 data.table 对象,我通过几个 dplyr 函数进行管道传输。
当通过 时dplyr::select
,结果对象的类是 data.table + data.frame。
但是当我通过它时dplyr::filter
,输出类只是 data.frame 。
mtcars_dt = data.table(mtcars) # "data.table" "data.frame"
mtcars_dt %>% dplyr::select(hp, mpg) %>% class # "data.table" "data.frame"
mtcars_dt %>% dplyr::filter(hp > 100) %>% class # "data.frame"
为什么会发生这种情况,如何确保在使用时保留 data.table 类dplyr::filter
?