【问题标题】:HOW can i sum a categorical variable and aggregate by factor我如何对分类变量求和并按因子汇总
【发布时间】:2017-10-21 07:37:45
【问题描述】:

所以让我更具体一点...... 我有一个数据集有

  1. SOCCERTEAM - 球员

  2. 巴萨-梅西

  3. 巴萨 - 梅西
  4. 巴萨 - 梅西
  5. 巴萨-哈维

  6. -RM - CR

  7. -RM - CR

  8. -RM-PEPE

  9. -RM-HIQUAIN 等(只是一个例子而不是数据集)

作为列!!!

我想要这个问题的答案: “我如何根据他们使用的球员数量找到前 5 名球队” *团队可以多次使用球员,因此不可能找到因子水平 *所以如果巴萨使用了 15 名球员,而 Rm 使用了 14 名球员,那么 BARCA 是第一个.....

【问题讨论】:

  • 试试library(data.table);head(setDT(df1)[, .(n = uniqueN(PLAYERS)), SOCCERTEAM][order(-n)]$SOCCERTEAM, 5)
  • @akrun thnx 寻求帮助......即使我无法真正找到该部件的用途,它也能正常工作:.....[, .(n = uniqueN(PLAYERS)), SOCCERTEAM][order(-n)]$SOCCERTEAM, 5)... 为什么在 setDT(df1) 之后我们使用 [ ] ?

标签: r sum aggregate factors summarize


【解决方案1】:
library(dplyr)

df %>% 
  group_by(SOCCERTEAM) %>% 
  summarize(rank = n_distinct(PLAYERS)) %>%
  top_n(5, wt = rank)

【讨论】:

  • mutate_impl(.data, dots) 中的错误:无效的下标类型“列表”
  • 也许尝试将“排名”重命名为其他名称。所以summarize(n_players = n_distinct(PLAYERS)) %>% top_n(5, n_players)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-11-27
  • 2023-01-12
  • 1970-01-01
  • 1970-01-01
  • 2020-08-03
  • 2018-10-22
  • 1970-01-01
相关资源
最近更新 更多