改变很多变量的值

时间:2016-05-09 16:08:33

标签: spss

我想将很多变量的缺失值更改为0.我已经编写了这段代码(还有很多变量,它只是一个例子):

RECODE variable1 ($SYSMIS = 0).
EXECUTE.

RECODE variable2 ($SYSMIS = 0).
EXECUTE.

RECODE variable3 ($SYSMIS = 0).
EXECUTE.

是否有一种更简单的方法可以做同样的事情?像编程或类似的一段时间

非常感谢你

3 个答案:

答案 0 :(得分:1)

如果所需的目标变量在您的活动数据集中按连续顺序排列,则可以使用keyword TO

例如:

RECODE V1 to V3 (SYSMIS=0).

请注意您错误地使用了关键字" SYSMIS"在RECODE命令和已提供的示例代码中已更正。

否则,您将不得不使用DO REPEATDEFINE/ENDDEFINE

答案 1 :(得分:1)

除了Jignesh的回复,如果所有变量都是数字,你可以使用ALL。

RECODE ALL(SYSMIS=0).  

DEFINE!ENDDEFINE是Overkill,DO REPEAT并没有为你在RECODE命令中明确列出变量而购买任何东西。

答案 2 :(得分:1)

您的第一步应该是将所有命令合并为一个 - 无论变量的顺序如何,都可以这样做 - 只需明确提及命令中的所有变量名称(如提到的大卫):

RECODE variable1 variable2 variable3 variable4 .... (sysmis=0).

这将节省相当多的代码。 现在,正如Jignesh所提到的 - 对于连续顺序的变量,你可以使用to

RECODE variable1 to variable3 (sysmis=0).

或者也是一组包含两组连续变量和另外两个独立变量的例子:

RECODE variable1 TO variable23 var1 TO var7 AnotheVar3 AnotheVar12 (sysmis=0).

这里绝对不需要循环命令。