需要包
'dplyr'
'nycflights13'
我正在使用的小标题是
q4<-flights%>%group_by(year,month,day)%>%summarise(cancelled=sum(is.na(dep_time)),avg_delay=mean(arr_delay,na.rm = T),totalflights=n())
q4<-q4%>%mutate(prop=cancelled/totalflights)
Run Code Online (Sandbox Code Playgroud)
使用
q4%>%ungroup()%>%count(prop)
Run Code Online (Sandbox Code Playgroud)
给我
# A tibble: 342 x 2
prop n
<dbl> <int>
1 0 7
2 0.00101 1
3 0.00102 2
4 0.00102 1
5 0.00102 1
6 0.00102 1
7 0.00103 1
8 0.00103 1
9 0.00104 1
10 0.00104 1
# ... with 332 more rows
Run Code Online (Sandbox Code Playgroud)
有没有一种方法可以(不使用强力逻辑,如 for 循环等)以所需的形式获得输出,我正在寻找单行或两行解决方案。dplyr 中有一个函数可以做到这一点吗?
期望的输出:
# A tibble: X x Y
prop n
<dbl> <int>
1 0-0.1 45 #random numbers
2 0.1-0.2 54
3 0.2-0.3 23
Run Code Online (Sandbox Code Playgroud)
下面,我对cut数据进行分箱,然后table对每个分箱的实例进行计数。
data.frame(cut(q4$prop, breaks = c(0, 0.1, 0.2, 0.3)) %>% table)
Run Code Online (Sandbox Code Playgroud)
产生
# . Freq
# 1 (0,0.1] 341
# 2 (0.1,0.2] 13
# 3 (0.2,0.3] 2
Run Code Online (Sandbox Code Playgroud)