1

我正在努力使用图形用户界面在 SPSS 中重新编码缺失值。我可以使用 GUI 和如下所示的对话框轻松地重新编码数值变量:

在此处输入图像描述

但是当我在同一个对话框中输入一个字符串变量时,将新值定义为“系统缺失”的选项不可用:

在此处输入图像描述

这么简单的问题肯定不用语法编辑器就可以解决吗?

我使用的是 SPSS 19 版

4

5 回答 5

4

这是因为系统缺失值仅针对数字变量定义。您可以为字符串定义用户缺失值。例如,重新编码为一些未使用的字符串值,"99999"然后将该值设置"99999"为用户丢失。

IBM SPSS Statistics 19 命令语法参考,第 55 页:

不能为字符串变量生成系统缺失值,因为任何字符都是合法的字符串值。

于 2012-12-18T10:59:52.480 回答
1

尝试...

RECODE OldStringVar ("Missing" = "").

或者...

DO IF OldStringVar = "".
RECODE OldStringVar (ELSE = COPY) INTO NewStringVar.
END IF.

或这种方法的变体。

于 2016-12-07T04:10:02.793 回答
0

我有同样的问题。我在该教程中找到了答案:

http://libguides.library.kent.edu/content_mobile.php?pid=481510&sid=4120229

在“自动重新编码”下

“事实上,这是让 SPSS 识别字符串变量缺失值的唯一方法;否则,SPSS 会将空白字符串视为有效值”

请按照上面的链接获取说明。谢谢

于 2014-10-26T22:17:40.740 回答
0

在代码中可以做到。执行以下操作(以地址字段为例): - 使用“自动重新编码”生成一个新的临时变量,其中旧变量的缺失值将很容易识别。转到“Transform\Automatic Recode”,双击文本变量(地址),输入新名称(Addr_Temp),然后单击“添加新名称”。标记“将空白字符串值视为用户缺失”框,然后单击确定。在代码中:

AUTORECODE VARIABLES=Address 
    /INTO Addr_Temp
    /BLANK=MISSING
    /PRINT.

** 可能,MISSING 将是最后一个(最高)值,我不确定,但很容易证明。现在,假设这个值为 94,这意味着您的数据中有 93 个绝对不同的有效值 address 并且第四个是空白(想象一个本地人出生地的数据,在一个有 93 家医院的城市。会有是93个不同的医院地址,有些是外国人的空白)。注意特殊字符,可能最后一个代码不会是空白字段...首先检查输出窗口的重新编码列表。- 将缺失值编码为已知和不寻常的代码,例如 9999FFFF(或其他不可能的街道地址,在我们的地址示例中),如下所示:

RECODE Addr_Temp (94='9999FFFF') INTO Address.
EXECUTE.

不幸的是,这在图形界面中不起作用,只有语法,至少在我的 SPSS 版本中(你可以在你的版本中尝试,只需进行正常的重新编码)。它不接受存在的变量

现在您在文本字段中有值“9999FFFF”,而不是空白值,并且可以根据需要使用(包括手动重新编码)。请记住在创建最终变量或“自动重新编码”变量时将其重新编码为数据丢失。

于 2016-03-14T21:45:45.510 回答
0

首先打开语法编辑器

缺少值 NAME_VAR1、NAME_VAR2 (" ")。执行

现在您可以使用 GUI 轻松地重新编码字符串变量。

重要的!!!仅适用于长度为 8 或更少的变量

于 2020-02-14T18:37:30.273 回答