Sim*_*mel 3 r subset dataframe dplyr tidyverse
在DATA下面的内容中,我尝试使用包含和的 sfilter以及包含.DistrictStatusMonitorNeverNo Answer
然后,在每个Districts 中,我只想要is或和is 的filter行。StatusMonitorNeverAnswerNo
所需的输出应该只是第一行、第三行、第十行和最后一行(见下文)。这可能吗?
我尝试了以下操作(没有成功):
library(dplyr)
group_by(DATA, District) %>%
filter(Status %in% c("Monitor","Never") & Answer == "No") %>%
ungroup()
Run Code Online (Sandbox Code Playgroud)
DATA <- read.table(h=T, text="
District Status Answer
A Monitor No #--> Filter this row
A Never Yes
A Never No #--> Filter this row
A Ever No
B Never Yes
B Never No
B Never No
C Former No
C Never No
D Never No #--> Filter this row
D Monitor Yes
D Monitor No #--> Filter this row
")
Run Code Online (Sandbox Code Playgroud)
对于“包括监视器和从不”,我们需要all(.)首先使用,然后我们可以继续过滤器的其余部分。
group_by(DATA, District) %>%\n filter(\n all(c("Monitor","Never") %in% Status),\n Status %in% c("Monitor", "Never"),\n Answer == "No"\n ) %>%\n ungroup()\n# # A tibble: 4 \xc3\x97 3\n# District Status Answer\n# <chr> <chr> <chr> \n# 1 A Monitor No \n# 2 A Never No \n# 3 D Never No \n# 4 D Monitor No \nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
42 次 |
| 最近记录: |