(从 Stata 到 R)将 egen-by 转换为 R

(From Stata to R) Converting egen-by to R

如何将这个 Stata 命令转换为 R?

我有一个由个人组成的数据库(每个人是一行),但我还需要一些家庭变量来分析。在这种情况下,我想要的是确定每个家庭赚取的总收入。 一个家庭的每个成员在数据库中都是一个个体,虽然我没有个体;标识,我有一个标识家庭的变量。 . 因为我也知道,对于每个人,2014 年的收入,在 Stata 中我有这个命令来创建变量:

egen family_inc = total(annual_inc), by (id_family)

哪里

family_inc是一个家庭的总收入 annual_inc是个人的总收入 id_family是这个家族在数据中的标识

所以命令对 Stata 说: (1) id_family的每个成员; (2) 找到那个家庭的所有成员; (3) 合计2014年度所得收入; (4) 把这个值赋给一个新的变量family_inc.

我可以用 group_by() 吗?我在 R. 非常 n00b,由于截止日期,现在不能抽出时间来上课! course(df_damn, mother = FALSE, explicit = 3, !is.numeric("loads of"))

以下Stata代码

webuse iris 
egen mean_petal_width = total(petwid), by(iris)

相当于R代码。

iris %>% 
    group_by(Species) %>% 
    mutate(
        # new_var_name   = function of other vars
        mean_petal_width = sum(Petal.Width, na.rm = TRUE)
    )

如果回答有帮助并解决了问题,请标记为已解决:)

数据: egen family_inc = total(annual_inc), by (id_family)

我的解读: 在 id_family

的每个级别内生成 family_inc 等于 annual_inc 的总和

R代码:

library(dplyr) 
df %>%
group_by(id_family) %>%
summarize(family_inc = sum(annual_inc))`