【发布时间】:2016-03-15 22:14:12
【问题描述】:
我有一个纵向数据集,其中包含每个受访者最多 59 个工作的信息。我对以下问题感兴趣:
REASON LEFT JOB IF NOT CURRENTLY WORKING JOB 01 2012
REASON LEFT JOB IF NOT CURRENTLY WORKING JOB 02 2012
.
.
.
每个都有 25 个不同的选择,其中我只对前三个感兴趣(1-裁员,2-公司关闭,3-临时工作结束)。我想将这 59 个变量重新编码为 1 个变量,因此如果有人因公司倒闭或裁员而失去工作(无论工作数量如何,我都想将其编码为 0,如果由于临时工作结束我想将其重新编码为 1。) 我会写:
Jobloss[Job1==1|Job1==2|Job2==1|Job2==2]<-0
Jobloss[Job1==3|Job2==3]<-1
如果我只有 2 个关于失业的变量,那就很容易了;但我有 59 个。 如果这些变量/列中的任何一个(c(1:59))==1 或 ==2,是否有一种简短的方法告诉 R 将新变量编码为 0。
我不仅需要用它来解决失业问题,还需要解决其他一些问题;所以这个命令可以为我节省很多时间。如果您能提供帮助,我将不胜感激。谢谢
【问题讨论】:
标签: r if-statement conditional recode