从 SPSS 数据集中删除观察结果

Removing observations from SPSS Dataset

我想从我的 SPSS 中的 table 中删除一些观察值,如果值满足,例如:

如果列中的产品+值满足,我想删除it/make它SYSMIS(仅此观察,该行的另一列的观察仍然可用,因此制作标志和临时select 不够)

尝试了几种方法,例如:

    RECODE VAR2(If(PRODUCT=1 AND VAR2=2000) = SYSMIS)(ELSE=COPY)
EXECUTE.

 IF(PRODUCT=1 AND VAR2=2000) RECODE VAR2(SYSMIS)(ELSE=COPY)
EXECUTE.

None 有效

除了从原始数据中删除观测值之外,还有其他方法可以删除观测值吗?我想避免它

查找一些基本的 spss 语法教程可能会节省很多工作。请参阅 here 以获得一个好的站点。

在当前情况下,您只需要:

If PRODUCT=1 AND VAR2=2000 VAR2=$SYSMIS.

要使语法与 recode 兼容,您可以这样做:

DO IF (PRODUCT=1 AND VAR2=2000).
  RECODE VAR2 (ELSE=SYSMIS).
END IF.

听起来您可能不想删除原始数据,而只是 运行 您对数据子集的分析。在这种情况下,使用 SELECT IF:

SELECT IF (PRODUCT=1 AND VAR2=2000).

或:

SELECT IF NOT (PRODUCT=1 AND VAR2=2000).

这将删除任何不符合条件的行,因此所有后续分析将仅包括符合条件的行。

如果您只想暂时过滤行 - 您可以使用 filter 命令而不是 select