计算组内子组的平均值
Posted
技术标签:
【中文标题】计算组内子组的平均值【英文标题】:Calculate mean for subgroup within group 【发布时间】:2021-12-28 01:17:29 【问题描述】:我想。数据看起来像这样
sex | season | outcome |
---|---|---|
F | breed | 0 |
F | breed | 0 |
F | breed | 1 |
F | breed | 1 |
F | breed | 1 |
F | breed | 0 |
F | breed | 0 |
F | molt | 0 |
F | molt | 1 |
F | molt | 1 |
F | winter | 1 |
F | winter | 0 |
F | breed | 0 |
F | breed | 0 |
F | breed | 1 |
F | breed | 1 |
M | breed | 0 |
M | breed | 0 |
M | breed | 0 |
M | molt | 0 |
M | molt | 1 |
M | molt | 1 |
M | winter | 0 |
M | winter | 0 |
我想计算季节内每种性别的结果平均值。例如,我想知道雌性在繁殖、蜕皮和冬季的平均结果。我想对男性重复一遍。
我可以使用以下代码计算每性别结果的平均值:
detect %>%
group_by(sex) %>%
summarise(dr = mean(outcome))
但我不知道如何将事物分解为季节的子组。
【问题讨论】:
试试group_by(sex, season)
。
【参考方案1】:
你在正确的轨道上。只需添加您想要分组的第二列,正如 Park 在 cmets 部分中提到的那样,而不是 season
使用 breed
(假设我正确理解您的需求):
detect %>%
group_by(sex, breed) %>%
summarise(dr = mean(outcome))
【讨论】:
以上是关于计算组内子组的平均值的主要内容,如果未能解决你的问题,请参考以下文章
Pandas Dataframe:获取组内每个子组的第一行的平均值