不使用dcast查找频率表

时间:2019-01-13 18:35:13

标签: r dplyr frequency tidyverse

提供数据

> data
  Month Alpha
1   Jan     A
2   Jan     B
3   Jan     A
4   Feb     B
5 March     A
6 March     A
7 April     A

必需的输出

enter image description here

请使用group_by()或spread()函数提供不使用dcast函数的解决方案。无法正确使用这些功能。

1 个答案:

答案 0 :(得分:1)

这是基本的R解决方案:

with(df,table(Month,Alpha))


     Alpha
Month   A B
  April 1 0
  Feb   0 1
  Jan   2 1
  March 2 0

我正在准备一个tidyverse选项,如@markus所建议:

df %>% 
  group_by(Month,Alpha) %>% 
  summarise(N=n()) %>% 
  spread(Month,N,fill=0)#can use Alpha instead of Month
 Alpha April   Feb   Jan March
  <fct> <dbl> <dbl> <dbl> <dbl>
1 A         1     0     2     2
2 B         0     1     1     0