gpt4 book ai didi

r - Base R 而不是 dplyr : group and summarise the data?

转载 作者:行者123 更新时间:2023-12-05 02:12:27 25 4
gpt4 key购买 nike

数据集在 Kaggle 上可用:https://www.kaggle.com/heesoo37/120-years-of-olympic-history-athletes-and-results/

我想知道我们是否可以使用 Base R 创建一个对象,该对象针对性别和季节的每种组合包含数据集中不同运动的数量?

我已经为此使用了 dplyr 包并且它有效:

data %>% 
group_by(Sex, Season) %>%
summarise(num_sports_played = length(unique(Sport)))

但我想知道是否也可以使用 base R 来实现。结果应该是一个包含 4 行和 3 列(性别、季节、参加的运动项目数)的表格。注:参加的运动项目数量是指参加的独特运动项目的总数,例如:gender:male/season:summer/sport: 男性在夏季比赛中参加的独特运动的数量。

最佳答案

一种方法是使用聚合。我认为这是最直接的 base 方法。您也可以使用其他函数,但这个是最容易理解的。

aggregate(Sport ~ Sex + Season, data = data, 
FUN = function(x) length(unique(x)) )
Sex Season Sport
1 F Summer 40
2 M Summer 49
3 F Winter 14
4 M Winter 17

关于r - Base R 而不是 dplyr : group and summarise the data?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56024442/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com