【问题标题】:How to ungroup a merged table in R?如何在 R 中取消对合并表的分组?
【发布时间】:2019-11-24 22:41:56
【问题描述】:

我有这张表,它是通过连接使用 CPS 数据创建的另外两个表来制作的。我通过agesex 加入了两者,然后我计算了这个假设经济中每个年龄和性别的劳动力参与率。现在我需要通过agesex 折叠表格,以便获得总人口劳动力参与率,但由于某种原因ungroup() 命令不起作用。我已经在附加的图像链接中包含了数据的摘录以及到目前为止的代码。

cps_summary2 <- left_join(cps_summary2015, cps_summary1995,
                     by = c("age", "sex"))
cps_summary2 <- cps_summary2 %>% mutate(estWorkingAgePop = cps_summary2$total_pop.x * cps_summary2$lfpr.y)
cps_summary2 <- cps_summary2 %>% mutate(laborforcerate = estWorkingAgePop/total_pop.y)  %>% 
ungroup(cps_summary2, by = c("age", "sex"))

【问题讨论】:

  • 表格似乎保持不变。
  • 其实,看你的代码,我看不到任何group_by 语句。您能否更详细地解释您的问题是什么,您如何知道它不起作用以及您尝试实现的目标是什么?
  • 我需要计算人口老龄化对总(全人口)劳动力参与率的影响。具体来说,如果人口年龄分布与 1995 年相同,2015 年 15 岁及以上人群的总参与率是多少。所以我将 CPS 数据按年龄和性别的两个汇总表合并,乘以2015年总人口由1995年的劳动力参与率得到估计的劳动年龄人口。然后得到这个假设的 LFPR 除以 1995 年的总人口。我需要折叠它
  • 那就是summarise。如果您想将某个函数应用于所有给出一个返回值的值,请参阅help(dplyr) 示例。如果这还不够,请提供一些数据和所需的输出。
  • 我也试过了,但表格完全空白,我也不知道为什么

标签: r economics


【解决方案1】:

您尚未对表格中的行进行分组,因此无法取消分组。您在一个键上将两个表中的列“连接”在一起。要扭转这种情况,您可以简单地对表进行子集化,选择表 1 中所需的列并将其分配给新对象;并对表 2 执行相同操作。

iris.1 <- iris %>%
  select(Petal.width, Petal.length)
iris.2 <- iris %>%
  select(-c(Petal.width, Petal.length))

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2021-11-30
  • 1970-01-01
  • 2016-11-06
  • 1970-01-01
  • 1970-01-01
  • 2015-05-10
  • 2021-06-18
  • 2020-08-16
相关资源
最近更新 更多