【发布时间】:2025-12-30 00:00:11
【问题描述】:
这是一个初学者的问题,但来自 Stata,这对我来说似乎很棘手。如有任何提示,我将不胜感激。
我有一个包含变量 District_id、年份、派对和投票的数据框。我想将每个地区每年每个党派的选票(=每一行)除以该党今年的总票数(=这里以块显示)。那么一个地区对收到的总票数贡献了多少百分比一年一个派对?
结构是
district_i year party votes
1 2001 party1 24
2 2001 party1 56
3 2001 party1 12
1 2002 party1 40
2 2002 party1 749
3 2002 party1 26
1 2001 party2 34
2 2001 party2 48
3 2001 party2 23
1 2002 party2 34
2 2002 party2 48
3 2002 party2 98
我为每个政党/地区/年组创建了小计
agg <- aggregate(df$votes, list(df$party, df$year), FUN="sum")
但是如何通过 agg 中存储的结果来划分数据框中的单元格? 最后,我希望有一个包含百分比的新列。
有没有更简单的方法(比如Stata中的egen .. by:)?
【问题讨论】:
标签: r dataframe aggregate subset