我遇到了这个问题我无法理解:
library(dplyr)
d<-data.frame(c1=c("a","a","b","b"),c2=c(1,1,3,4))
dFiltered <- d %>%
filter(c1 == "a") %>%
select(c1)
> dFiltered
c1
1 a
2 a
所以我想创建一个data.frame来根据过滤后的数据获得c1的频率
> data.frame(table(dFiltered))
dFiltered Freq
1 a 2
2 b 0
我不明白为什么价值b也会出现,即使它显示0,我也不希望在这里找到它,因为如果我运行相同但从c2中选择一个值
> dFiltered <- d %>%
filter(c2 == "1") %>%
select(c2)
> data.frame(table(dFiltered))
然后我得到了我的期望
dFiltered Freq
1 1 2
我相信对此有合理的解释