一些受访者将出生年份不是年龄,需要将其全部转换为年龄(在 R 中)
Some respondents put birth year not age, need to convert it all to age (in R)
我有一项调查和其中一个关于年龄(岁)的问题。大多数人输入了他们的年龄,但有些人输入了他们的出生年份。所以我需要将它们转换为年龄(2020 年)。有没有一种方法可以做到这一点,而不是每年手动进行并转换它?我正在使用 R。
另外,为了代码将来可用,有没有办法从 'current' 年而不是 2020 年开始计算?
age<-c(22,1992,18,33,41,26,24,24,1982,30,1976,30)
这将教我在下一次调查中将 'max' 放入值框!
谢谢 :)
您可以使用简单的 ifelse
语句来解决此问题:
如果 age
> 1000
,则从当前年份 2020
中减去 age
;如果 age
不是 > 1000
,则保留 age
:
ifelse(age > 1000, 2020 - age, age)
[1] 22 28 18 33 41 26 24 24 38 30 44 30
我有一项调查和其中一个关于年龄(岁)的问题。大多数人输入了他们的年龄,但有些人输入了他们的出生年份。所以我需要将它们转换为年龄(2020 年)。有没有一种方法可以做到这一点,而不是每年手动进行并转换它?我正在使用 R。 另外,为了代码将来可用,有没有办法从 'current' 年而不是 2020 年开始计算?
age<-c(22,1992,18,33,41,26,24,24,1982,30,1976,30)
这将教我在下一次调查中将 'max' 放入值框!
谢谢 :)
您可以使用简单的 ifelse
语句来解决此问题:
如果 age
> 1000
,则从当前年份 2020
中减去 age
;如果 age
不是 > 1000
,则保留 age
:
ifelse(age > 1000, 2020 - age, age)
[1] 22 28 18 33 41 26 24 24 38 30 44 30