当前位置:  开发笔记 > 编程语言 > 正文

R:如何将类别转换为列?

如何解决《R:如何将类别转换为列?》经验,为你挑选了1个好方法。

我有这样的数据:

Id Action timestamp
1   click    #########
1    view    #########
1    data    #########
2    click   #########
2   click    #########

我想将类别转换为包含频率(计数)的列,如下所示:

id click view data
1    1    1     1
2    2    0     0 

我怎样才能做到这一点?谢谢 !



1> Selva..:

这是你如何做到的.

# create the data frame
df <- data.frame(Id=c(1,1,1,2,2), Action=c("click", "view", "data", "click", "click"))
df
#>   Id Action
#> 1  1  click
#> 2  1   view
#> 3  1   data
#> 4  2  click
#> 5  2  click

# Use reshape2::dcast
library(reshape2)
dcast(df, Id ~ Action, fun.aggregate = length)
#>   Id click data view
#> 1  1     1    1    1
#> 2  2     2    0    0

推荐阅读
kikokikolove
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有