部分受访者填写的是出生年份而非年龄,需要全部换算成年龄(以R计)。

问题描述 投票:0回答:1

我有一个调查,其中一个问题是问年龄(岁数)。大多数人把他们的年龄,但有些人把他们的出生年份。所以我需要将这些转换为年龄(2020年)。有没有一种方法可以做到这一点,而不意味着手动通过每个年份并转换它?我使用的是R。另外,为了使代码在将来可以使用,有没有办法从 "当前 "年份开始计算,而不是2020年?

age<-c(22,1992,18,33,41,26,24,24,1982,30,1976,30)

这将教会我在下一次调查中,在值框中填入 "最大"。

谢谢 :)

r converters
1个回答
0
投票

你可以解决这个问题,通过使用一个简单的 ifelse这样的语句。

如果 age 是> 1000,分馏 age 当年起 2020; 如果 age 是不> 1000,保持 age:

ifelse(age > 1000, 2020 - age, age)
[1] 22 28 18 33 41 26 24 24 38 30 44 30
© www.soinside.com 2019 - 2024. All rights reserved.