如何在SPSS频率输出中包含0响应的类别



是否有方法显示SPSS频率输出中有0个响应的响应选项?默认情况下,SPSS会在频率表输出中省略任何未由至少一个受访者选择的响应选项。我寻找了一个语法驱动的选项,但没有成功。提前感谢您的帮助!

它没有显示,因为数据中没有一个案例具有该属性。所以,通过强制一行零,你需要意识到我们要求SPSS做一些不正确的事情。

话虽如此,你可以介绍一个缺失类别的假案。例如,如果你有Orange、Apple和Pear,但没有人回答,他们喜欢Pear,那就加一个假盒子,上面写着Pear。

现在,创建一个仅由1组成的新权重变量。但对于梨的情况,使其非常非常小,如0.00001。然后,转到数据>权重案例>权重案例,然后将新的权重变量放在上面。单击"确定"应用。现在,SPSS将处理权重为1的"1"和权重为正常情况的1/10000的假病例。如果您重新运行频率,您应该会看到计数为零的频率出现。

如果你已经购买了自定义表模块,你也可以直接这样做,据我从他们的技术文档中所知。该模块的成本为637至3630,具体取决于许可证类型,因此可能只有在您的机构拥有该模块的情况下才值得一试。

所以,我是SPSS的新手,我(真遗憾)有一个破解版的SPSS 22,如果我正确理解你的问题,这就是我的解决方案:

  • 双击"输出"中的"频率"表
  • 右键单击"表",选择"表属性"
  • 转到"常规",然后取消选中"隐藏空行和空列"选项

希望这能帮助到别人!

如果您的SPSS版本没有安装自定义表,并且您还没有为该模块筹集资金,则使用以下方法(运行此语法):

*Note: please use variable names up to 8 characters long.
set mxloops 1000. /*in case your list of values is longer than 40
matrix.
get vars /vari= V1 V2 /names= names /miss= omit. /*V1 V2 here is your categorical variable(s)
comp vals= {1,2,3,4,5,99}. /*let this be the list of possible values shared by the variables
comp freq= make(ncol(vals),ncol(vars),0).
loop i= 1 to ncol(vals).
comp freq(i,:)= csum(vars=vals(i)).
end loop.
comp names= {'vals',names}.
print {t(vals),freq} /cnames= names /title 'Frequency'. /*here you are - the frequencies
print {t(vals),freq/nrow(vars)*100} /cnames= names /format f8.2 /title 'Percent'. /*and percents
end matrix.
*If variables have missing values, they are deleted listwise. To include missings, use
get vars /vari= V1 V2 /names= names /miss= -999. /*or other value
*To exclude missings individually from each variable, analyze by separate variables.

最新更新