【发布时间】:2018-06-17 16:01:08
【问题描述】:
我有一对夫妇的数据,变量:“户口”、“户主”、“教育”、“收入”。 “户号”是唯一分配给每个家庭的身份证号码。 “户主”是指该人是否为户主(1 = 户主,2 = 户主的配偶),“教育”和“收入”分别是个人的受教育程度和收入。例如,数据如下所示。
'household_number' 'head_of_household' 'education' 'income'
1 1 high 1000
1 2 low 100
3 1 medium 500
3 2 high 800
4 2 high 800
4 1 high 800
9 1 low 150
9 2 low 200
我想为每个人创建配偶变量。所以数据如下所示。其中“配偶教育”是配偶的教育水平,“配偶公司”是配偶的收入。
'household_number' 'head_of_household' 'education' 'income' 'spouse_edu' 'spouse_inc'
1 1 high 1000 low 100
1 2 low 100 high 1000
3 1 medium 500 high 800
3 2 high 800 medium 500
4 2 high 800 high 800
4 1 high 800 high 800
9 1 low 150 low 200
9 2 low 200 low 150
我有非常大的数据集,所以我正在寻找简单的方法来做到这一点。有什么优雅的方法可以做到这一点?
以下是可重现的示例语法。
household_number <- c(1,1,3,3,4,4,9,9)
head_of_household <- c(1,2,1,2,2,1,1,2)
education <- c("high", "low", "medium", "high", "high", "high", "low", "low")
income <- c(1000, 100, 500, 800, 800, 800, 150, 200)
data <- data.frame(household_number, head_of_household, education, income)
【问题讨论】:
-
结婚很容易:
git wife