【发布时间】:2019-10-31 15:48:35
【问题描述】:
您好,我在 R 中创建了一组年龄段:
labs <- c(paste(0, "", sep=""), paste(1,9, sep="-"),paste(seq(10, 80, by = 10), seq(20-1, 90-1, by =10), sep="-", paste(90, "+", sep=""))
out "0" "1-9" "10-19" "20-29" "30-39" "40-49" "50-59" "60-69" "70-79" "80-89" "90+"
如何将 df 中的一列年龄排序到实验室中的适当年龄组?如何使用剪切功能?
预期输出将是:
Age AgeGroup
5 1-9
0 0
15 10-19
69 70-79
100 90+
【问题讨论】:
-
您的预期输出是什么。你需要的是
cut(age, breaks = c(1, seq(10, 90, by = 10), Inf)) -
在上面添加了预期的输出
-
我在 cut.default(df$Age, breaks = c(1, seq(10, 90, by = 10), : 'x' must be numeric 中遇到错误
-
您的年龄列是数字吗?如果不这样做
df$Age <- as.numeric(as.character(df$Age)) -
我建议将“年龄”转换为
numeric
标签: r