繁体   English   中英

如何在r中使用tidyverse过滤行?

[英]How to filter rows using tidyverse in r?

认为这将是一项简单的任务,但让我很头疼。 我正在尝试在满足特定conditiofilter行,但是,出现错误。 下面是一个示例代码

library(tidyverse)

DF = data.frame(id = sample.int(20,20, replace = TRUE), A = runif(20, 100, 150), Dat = runif(20, 400,700))
DF_1 = DF %>% filter(id == c(6,8,17))

但是代码给了我一个DF_1 data.frame警告,当id等于 8 和 17 时它只有数据,而它应该给我一个data.frame id等于 6,8 和 17。

警告信息:

在 id == c(6, 8, 17) 中:较长的对象长度不是较短对象长度的倍数

您应该使用%in%而不是==过滤。

DF_1 = DF %>% 
  filter(id %in% c(6,8,17))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM