r - 如何从 R 中的数据框中的重复行中专门添加一些值?
问题描述
我有一个包含 3 个变量(部分、年龄组和人口)和 3011 个观察值的数据框。
age_group 中有 12 个不同的年龄组,每个年龄组都用一个从 1 到 12 的数字标识。1 代表 18 岁,2 代表 19 岁,3 代表 20-24 岁,4 代表 25-29 岁。 .. 12 岁是 65 岁以上。
每个部分有 12 行,人口按年龄组排序。
我想按世代(z,千禧一代,x,婴儿潮一代)显示每个部分,这将是 z = age_groups 1:3,millennial = age_groups 4:6,x = age_groups 7:9,boomers = 10:12
我尝试过使用 dplyr 包,特别是 ddply,即
ddply(~section, summarise, age_group = sum(age_group), population = sum(population))
但是我知道如何在没有所有组年龄合并的情况下从每个组中分离出来。
我正在使用的表格片段
解决方案
听起来您需要添加另一列generation
,然后按generation
and进行汇总age_group
:
df = df %>%
mutate(generation = case_when(age_groups %in% c(1,2,3) ~ "z",
age_groups %in% c(4,5,6) ~ "millennial",
age_groups %in% c(7,8,9) ~ "x",
age_groups %in% c(10,11,12) ~ "boomers")) %>%
group_by(generation, age_groups) %>%
summarise(num = n(), .groups = "drop")
推荐阅读
- loops - 在定期调用的函数中每隔一段时间重复某些内容的优雅方式
- sap - SAP for non SAPpers:变更文档是传输的集合,只是代码增量?
- javascript - Vue Js - 在单个 vue 组件中的多个 js 文件中拆分 methods.js
- mosquitto - 接收消息时如何确定ID客户端?
- git - 无法在 EC2 Ubuntu 实例中使用 git ssh 连接到 bitbucket
- python - 如何从 ruamel.yaml 转储的输出中删除 2 个空格?
- bash - bash 脚本构建包含“\n”的查找命令
- hazelcast - Hazelcast 嵌入式模式
- profiling - Apple 的乐器样本列表
- zsh - 在 Hyper (MacOS) 中清除缓冲区