在 SPSS 中隐藏没有数据的标签
Hide Labels with No Data in SPSS
我刚开始使用 SPSS,我在 SPSS 中尝试了 Select 个案例选项,后来我根据该过滤器找到了频率。
例如:
假设Q1有12个部分,Q1_1 Q1_2 Q1_3 Q1_4 Q1_5 Q1_6 Q1_7 Q1_8 Q1_9 Q1_10 Q1_11 Q1_12
我想根据我在 select 个案例中使用的条件查看这些变量中的数据。现在,当我尝试根据过滤器查看这些变量的频率时,12 个满足中只有 4 个有数据。
现在我的问题是我可以隐藏剩余的 8 并在我的输出 window 上只显示 4 的数据。
不完全清楚您要描述的内容,但是从字里行间看,我猜您正在尝试删除从可能恰好为空的 FREQUENCIES 生成的 tables(可能是由于已应用过滤器,但也不一定)
您可以使用 SPSS Scripting 执行此操作,但为了避免这种情况,您可能想使用 CTABLES 进行探索,虽然它的格式可能与 FREQUENCY table 输出的格式不完全相同,但它仍然 none越少检索到相同的信息。
下面的解决方案。假设 Python 与 SPSS SELECT VARIABLES 集成,当然还有 CTABLE 附加模块。
/****** Simulate example data ******/.
input program.
loop #j = 1 to 100.
compute ID=#j.
vector Q(12).
loop #i = 1 to 12.
do if #j<51 and #i<9.
compute Q(#i) = $sysmis.
else.
compute Q(#i) = trunc(rv.uniform(1,5)).
end if.
end loop.
end case.
end loop.
end file.
end input program.
execute.
/************************************/.
/* frequencies without filtering applied */.
freq q1 to q12.
/* frequencies WITH filtering applied */.
/* Empty table here shoult be removed */.
temp.
select if (ID<51).
freq q1 to q12.
spssinc select variables macroname="!Qp" /properties pattern = "^Q\d+$"/options separator="+" order=file.
spssinc select variables macroname="!Qs" /properties pattern = "^Q\d+$"/options separator=" " order=file.
temp.
select if (ID<51).
ctables /table (!Qp)[c][count colpct]
/categories variables=!Qs empty=exclude.
请注意,如果您在 总级别 评估了空变量,那么 spssaux2
(spssaux2.FindEmptyVars
) 中有一个函数可以帮助您找到空变量,然后您可以构建语法来排除这些变量,因此包含仅具有有效响应的变量,然后包含 运行 FREQUENCIES
。但我认为 spssaux2.FindEmptyVars
不会接受任何过滤。
我刚开始使用 SPSS,我在 SPSS 中尝试了 Select 个案例选项,后来我根据该过滤器找到了频率。 例如: 假设Q1有12个部分,Q1_1 Q1_2 Q1_3 Q1_4 Q1_5 Q1_6 Q1_7 Q1_8 Q1_9 Q1_10 Q1_11 Q1_12 我想根据我在 select 个案例中使用的条件查看这些变量中的数据。现在,当我尝试根据过滤器查看这些变量的频率时,12 个满足中只有 4 个有数据。
现在我的问题是我可以隐藏剩余的 8 并在我的输出 window 上只显示 4 的数据。
不完全清楚您要描述的内容,但是从字里行间看,我猜您正在尝试删除从可能恰好为空的 FREQUENCIES 生成的 tables(可能是由于已应用过滤器,但也不一定)
您可以使用 SPSS Scripting 执行此操作,但为了避免这种情况,您可能想使用 CTABLES 进行探索,虽然它的格式可能与 FREQUENCY table 输出的格式不完全相同,但它仍然 none越少检索到相同的信息。
下面的解决方案。假设 Python 与 SPSS SELECT VARIABLES 集成,当然还有 CTABLE 附加模块。
/****** Simulate example data ******/.
input program.
loop #j = 1 to 100.
compute ID=#j.
vector Q(12).
loop #i = 1 to 12.
do if #j<51 and #i<9.
compute Q(#i) = $sysmis.
else.
compute Q(#i) = trunc(rv.uniform(1,5)).
end if.
end loop.
end case.
end loop.
end file.
end input program.
execute.
/************************************/.
/* frequencies without filtering applied */.
freq q1 to q12.
/* frequencies WITH filtering applied */.
/* Empty table here shoult be removed */.
temp.
select if (ID<51).
freq q1 to q12.
spssinc select variables macroname="!Qp" /properties pattern = "^Q\d+$"/options separator="+" order=file.
spssinc select variables macroname="!Qs" /properties pattern = "^Q\d+$"/options separator=" " order=file.
temp.
select if (ID<51).
ctables /table (!Qp)[c][count colpct]
/categories variables=!Qs empty=exclude.
请注意,如果您在 总级别 评估了空变量,那么 spssaux2
(spssaux2.FindEmptyVars
) 中有一个函数可以帮助您找到空变量,然后您可以构建语法来排除这些变量,因此包含仅具有有效响应的变量,然后包含 运行 FREQUENCIES
。但我认为 spssaux2.FindEmptyVars
不会接受任何过滤。