根据另一列 SPSS 语法填充行中的缺失值?

问题描述 投票:0回答:1

我想使用 spss 语法用指定列中的值填充缺失的行值。

当前表:(Measure_Table)

sID 参观 值_1 值_2 值_3 价值_分数 为何失踪
1 1 3 2 5 12
1 2 1 2 5 12
1 3 6 2 5 12
2 1 8 2 5 12
2 2 -30
2 3 -10
3 1 2 2 1 12
3 2 7 8 9 12
3 3 -10

我一直在尝试使用此语法,但当我这样做时,它会运行,但 WhyMissing 中的值不会填充到其他列中。 对我来说,使用多列执行此操作很重要,因为我的数据集比我在此处显示的数据集大。

期望结果表:(Outcome_Measure_Table)

sID 参观 值_1 值_2 值_3 价值_分数 为何失踪
1 1 3 2 5 12
1 2 1 2 5 12
1 3 6 2 5 12
2 1 8 2 5 12
2 2 -30 -30 -30 -30 -30
2 3 -10 -10 -10 -10 -10
3 1 2 2 1 12
3 2 7 8 9 12
3 3 -10 -10 -10 -10 -10

这是已经能够运行的语法,但是当我导出到spss时它不会填充值。如果这是Python,我只会使用 fill na!我对使用 spss 语法的其他方法持开放态度!如果我可以使用界面来完成此操作并通过语法以供稍后使用,那也可以!

我的变量视图将其中一些缺失值设置为 lo -- 0。这会妨碍我吗?我该如何绕过?

DO REPEAT vr=value_1 TO value_Score.
    IF NOT MISSING(whyMissing) vr=whyMissing.
END REPEAT.
spss
1个回答
0
投票

一般来说,语法应该有效。请检查:

  1. 您在流程结束时运行了
    Execute
    吗?
  2. 确保“whyMissing”是一个数字变量。

如果这些没有帮助,请尝试运行此命令:

DO REPEAT vr=value_1 TO value_Score.
    IF MISSING(vr) vr=whyMissing.
END REPEAT.
execute.
© www.soinside.com 2019 - 2024. All rights reserved.