首页 > 解决方案 > 如果变量中有文本,则 SPSS 标志

问题描述

我是 SPSS(第 25 版)的新手,我正在努力解决可能很简单的事情 - 我的变量是字符串,所以有,可以说药物名称或客户名称或任何字符串。如果单元格中有任何内容,我想计算将标记它们的新变量(给它们值 1),如果单元格为空则错过,所以它看起来像这样

Var1 Var2
xxx   1
 -
yyy   1
zzz   1

等等。当 var1 是数字时很容易,但当它的字符串时就不行

我试过这样的东西

IF NOT (var1="") var2 = 1 .

或者

IF(NOT(var1="")) var2 = 1 .

但它会创建空数字 var2

即使在我的指南上它也说

If(sysmis(var1)) var1new = 1.

但是它似乎不适用于 SPSS ver.25

希望你能帮我解决这个问题,从而节省很多工作

标签: spss

解决方案


正如您从评论中看到的那样,有很多方法可以完成此任务。我主张发出一个 COMPUTE 命令,您可以在其中根据逻辑条件设置新变量的值:

计算标志 = (CHAR.LENGTH(RTRIM(LTRIM(var1)))>0)。

执行。

上面查看了修剪后的字符串的长度(空格从值的右侧和左侧修剪掉)。如果单元格为空或包含空格,则修剪长度为零 (0),条件为“假”,新的“标志”变量将获得 0 值。如果存在数据,则修剪长度将 > 0,条件为“真”并且新的“标志”变量获得 1 值。


推荐阅读