无法删除sysmis spss变量

时间:2015-12-11 11:32:07

标签: variables spss

需要删除没有数据的spss变量(sysmis数据)

命令IF(SYSMIS(V1))DELETE VARIABLES V1。犯规'工作。

2 个答案:

答案 0 :(得分:3)

IF命令无法以这种方式运行,您正在尝试。它根据具体情况运作,即 IF 案例符合某一标准那么将某种转变应用于仅限案例(不是变量作为一个整体)。

如果您不需要动态搜索空变量(可以使用python - 参见下文),那么您只需要DELETE VARIABLES命令(或者ADD FILESMATCH FILES命令全部实现完全相同的结果 - DELETE VARIABLES除了不需要挂起的转换外,所以在这种情况下我个人更喜欢ADD FILESMATCH FILES)。

这3个命令中的任何一个都应该足够了:

DELETE VARIABLES v1.
ADD FILES FILE=* /DROP=v1.
MATCH FILES FILE=* /DROP=v1.

但是,如果您需要动态检查变量是否为空,然后只删除它,那么您可以使用python来执行此操作。

您需要安装python集成并正确设置您的SPSS版本和spssaux2模块,并将其保存在SPSS可以找到的适当位置,以便以下工作:

DATA LIST FREE / A B C D.
BEGIN DATA 
1 2 3 4 5 6 7 8 9 10 11 12
END DATA. 
COMPUTE C=$SYSMIS.
DATASET NAME DSSIM.

BEGIN PROGRAM.
import spssaux2
spssaux2.FindEmptyVars(delete=True)
END PROGRAM.

答案 1 :(得分:0)

SYSMIS不是指变量而是指细胞。从你的方法来看,你必须;

COUNT(SYSMIS(V1))如果它等于您的情况(数据文件上的行)计数,那么您可以删除VARIABLES V1。