将选定的答案从一个案例复制到另一个案例 SPSS

问题描述

我很难将一个案例的回复复制到另一个案例中。

示例: 一个家庭有3个兄弟姐妹。如果孩子与其他兄弟姐妹之一共用一位母亲,则不会向该母亲的第二个孩子询问与母亲有关的问题。

然后我如何将母亲的第一个孩子的答案复制到第二个孩子?下图

enter image description here

例如,在家庭 1112 中,由于孩子 3 与孩子 2 共用一个母亲,因此他们没有被问及母亲的工作或母亲的年龄。

9998 反映系统缺失数据(问题被跳过)

如何将这些变量的响应复制到孩子 3?

解决方法

这是一种非常奇怪的记录数据的方式——有没有办法在源头上改变它?应该有一个单独的母亲详细信息表,儿童表和母亲表通过母亲ID连接。
但是 - 鉴于当前形式的数据 - 这就是我的想法:以下代码将创建原始表的副本并将其与自身匹配,同时连接 child number 列中的数字和bio_mother 列。

首先,我重新创建了一些示例数据以进行演示:

data list list/HHID childnumber biomother mother_age (4f6) mother_job (a20).
begin data
    112 1   99998   25  "unemployed"
    112 2   0   33  "nurse"
    112 3   2   99998   "99998"
    116 1   99998   25  "domestic worker"
    116 2   1   99998   "99998"
    116 3   0   28  "sales assistant"
    116 4   3   99998   "99998"
end data.
dataset name orig.

现在开始工作:

dataset copy tab2.
dataset activate tab2.
delete vars biomother.
rename vars childnumber=biomother mother_age=Xmother_age mother_job=Xmother_job.
sort cases by HHID biomother .

dataset act orig.
sort cases by HHID biomother.
match files /file=* /tab=tab2/by HHID biomother .
exe.

现在我们在正确的行中有数据,最后一步是将其复制到正确的列中。

if mother_age=99998 mother_age=Xmother_age.
if mother_job="99998" mother_job=Xmother_job.
exe.