【发布时间】:2021-04-17 12:14:37
【问题描述】:
我有一个包含多个国家/地区信息的数据集。当我试图构建人口权重时,我想计算: 国家人口(数据集中包含的变量)/每个国家的样本量(每个国家不同)
对于一个特定的国家,我会首先创建一个子集(例如 italydata = subset(data, data$country == "Italy"),然后将 country_population 除以 nrow(italydata)。
我正在寻找一种方法来为数据集中的每个国家/地区进行此计算。我已经用 dplyr 包试过了,但我不确定要写什么而不是 nrow("x")。
weight_by_economy <- data %>%
group_by(country) %>%
summarize(weight = country_population/nrow(x))
感谢您的帮助!
【问题讨论】:
-
将
summarize更改为mutate -
或
summarize(weight = country_population/n())