【发布时间】:2018-11-17 19:38:53
【问题描述】:
我想根据基于日期的列计算分类变量的唯一值。
我希望将结果作为矩阵,其中列名是值分类变量,行名将是唯一的日期值,它们的单元格值是唯一计数。
以下链接按问题解决了分组问题,但我正在寻找转换后的 df:
How to add count of unique values by group to R data.frame
R: Extract unique values in one column grouped by values in another column
我的 df 有超过 50,000 行,看起来像:
dat <- data.frame(Date = c('06/08/2018','06/08/2018','07/08/2018','07/08/2018','08/08/2018','09/08/2018','09/08/2018','11/08/2018','11/08/2018','13/08/2018'),
Type= c('A','B','C','A','B','A','A','B','C','C'))
我希望我的结果矩阵将“A”、“B”、“C”作为新列,将“日期”作为行和矩阵中的值作为唯一计数,如下图所示:
此外,我们最好不要对分类值进行硬编码。所以,将来如果不是 3 而变成 4,那么代码会自动处理它。
【问题讨论】:
-
您是否尝试过使用
tidyr包中的spread? -
从未尝试过这些软件包。不是 R 方面的专家
标签: r matrix group-by aggregate