SPSS merge datasets with add variables only links 1个案例
SPSS merge datasets with add variables only links 1 case
我有以下语法来合并两个数据集。我希望生成的数据集 (test1) 包含 5 个案例,其中 4 个(2 到 5)是变量 set2 中的一个值。
我得到的结果是包含 5 个案例的数据集 test1,但其中只有 1 个(id 为 5 的案例)在变量 set2 中有值。
我是否需要联系我的 ICT 部门,或者我对在 SPSS 中合并数据有什么误解。我习惯于使用 SAS、R 和 SQL,但需要帮助某人在 SPSS
中进行数据合并
INPUT PROGRAM.
LOOP id=1 to 5.
END CASE.
END LOOP.
END FILE.
END INPUT PROGRAM.
COMPUTE set1 = RV.NORMAL(1,1).
EXECUTE.
DATASET NAME test1.
INPUT PROGRAM.
LOOP id=2 to 5.
END CASE.
END LOOP.
END FILE.
END INPUT PROGRAM.
COMPUTE set2 = RV.NORMAL(1,1).
EXECUTE.
DATASET NAME test2.
DATASET ACTIVATE test1.
STAR JOIN
/SELECT t0.set1, t1.set2
/FROM * AS t0
/JOIN 'test2' AS t1
ON t0.id=t1.id
/OUTFILE FILE=*.
结果:
id set1 set2
1,00 1,74
2,00 1,58
3,00 1,01
4,00 ,12
5,00 2,52 ,79
SPSS 版本 21
当我 运行 您提供的语法时,我得到了想要的结果(而不是您指定的结果):
如果仍然失败(联系 SPSS 支持后),请尝试使用 MATCH FILES
:
DATASET ACTIVATE test1.
SORT CASES BY ID.
DATASET ACTIVATE test2.
SORT CASES BY ID.
MATCH FILES FILE=test1 /FILE=test2 /BY ID.
DATASET NAME Restult.
我有以下语法来合并两个数据集。我希望生成的数据集 (test1) 包含 5 个案例,其中 4 个(2 到 5)是变量 set2 中的一个值。
我得到的结果是包含 5 个案例的数据集 test1,但其中只有 1 个(id 为 5 的案例)在变量 set2 中有值。
我是否需要联系我的 ICT 部门,或者我对在 SPSS 中合并数据有什么误解。我习惯于使用 SAS、R 和 SQL,但需要帮助某人在 SPSS
中进行数据合并 INPUT PROGRAM.
LOOP id=1 to 5.
END CASE.
END LOOP.
END FILE.
END INPUT PROGRAM.
COMPUTE set1 = RV.NORMAL(1,1).
EXECUTE.
DATASET NAME test1.
INPUT PROGRAM.
LOOP id=2 to 5.
END CASE.
END LOOP.
END FILE.
END INPUT PROGRAM.
COMPUTE set2 = RV.NORMAL(1,1).
EXECUTE.
DATASET NAME test2.
DATASET ACTIVATE test1.
STAR JOIN
/SELECT t0.set1, t1.set2
/FROM * AS t0
/JOIN 'test2' AS t1
ON t0.id=t1.id
/OUTFILE FILE=*.
结果:
id set1 set2
1,00 1,74
2,00 1,58
3,00 1,01
4,00 ,12
5,00 2,52 ,79
SPSS 版本 21
当我 运行 您提供的语法时,我得到了想要的结果(而不是您指定的结果):
如果仍然失败(联系 SPSS 支持后),请尝试使用 MATCH FILES
:
DATASET ACTIVATE test1.
SORT CASES BY ID.
DATASET ACTIVATE test2.
SORT CASES BY ID.
MATCH FILES FILE=test1 /FILE=test2 /BY ID.
DATASET NAME Restult.