semi_join 和 anti_join 函数创建 dtplyr 对象而不是数据帧

semi_join and anti_join functions creating dtplyr objects instead of data frames

所以我正在进行一个项目,该项目要求我将数据帧与来自 d​​plyr 的 semi_join 和 anti_join 相结合。但是,我没有创建 data.frame 作为输出,而是得到一个我无法使用的 dtplyr_step_subset 对象,我不知道它是如何工作的。 (请注意,这只发生在我更新我的 tidyverse 包之后)是否有一些关于修复此问题的连接函数的参数?

没有 reproducible example 很难确定。但我最好的猜测是它可能使用了 dtplyr 中的 semi_join,这给了你一个 data.table。一般来说,为了避免来自不同包的函数重叠,我建议为函数指定包。因此,您将使用 dplyr::semi_join()dplyr::anti_join()。另外,如果你不需要 dtplyr 那么你总是可以通过 detach("package:dtplyr", unload=TRUE).

分离它