使用SPSS IF语法从两个分类变量创建新变量

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

我想从另外两个变量创建一个新变量。

第一个是SEX(0 =男性,1 =女性;尽管我们已经计划了这种可能性,但受访者没有选择其他性别),而第二个是RACE9(0 =白色,1 =种族化)。新变量名为SEXRACE9。

虽然下面的代码产生白人男性,种族化男性,白人女性和种族化女性的计数,但该代码未能计算出男性总数或女性总数。

* Create combined sex and race categorical variable. 

IF (sex=0 AND (race9=0 OR race9=1)) sexrace9=1. /*Total males - glitchy.
IF sex=0 AND race9=1 sexrace9=2. /*White males.
IF sex=0 AND race9=0 sexrace9=3. /*Racialized males.
IF (sex=1 AND (race9=0 OR race9=1)) sexrace9=4. /*Total females - glitchy.
IF sex=1 AND race9=1 sexrace9=5. /*White females.
IF sex=1 AND race9=0 sexrace9=6. /*Racialized females.
EXECUTE.

我错过了什么吗?或者,有没有人有一个解决方案,如何使用COMPUTE插入总男性和总女性的计数?任何帮助是极大的赞赏。

spss
1个回答
2
投票

您缺少两个关键方面:

  1. 您的sexracevariable旨在定义互斥组(即 - 每个案例将属于一个组,并且任何案例都不符合多个组的资格)
  2. SPSS语法是逐行顺序运行的,因此语法行可以覆盖前面的行。

更重要的是:

IF (sex=0 AND (race9=0 OR race9=1)) sexrace9=1.

被部分覆盖

IF sex=0 AND race9=1 sexrace9=2. /*White males.

因为白人男性有资格获得sexrace=1sexrace=2。 ,然后按行

IF sex=0 AND race9=0 sexrace9=3. /*Racialized males.

,因为种族化的男性有资格获得sexrace=1sexrace =3

所以我猜测在运行你的语法之后没有任何情况下性别= 1 :)对于女性来说,完全相同的逻辑。

我不确定你想通过Total MalesTotal Femalessyntax线实现什么。你已经有了sexvariable来区分男性和女性。

© www.soinside.com 2019 - 2024. All rights reserved.