SPSS,全称“统计产品与服务解决方案”(Statistical Product and Service Solutions),现在在经济学、管理学、社会学等领域中已经是一款烂大街的工具了,就像美图秀秀极大地降低了修图的门槛,SPSS也极大地降低了统计的门槛,难度大概只比Excel高那么一点。在我的记忆里,我上小学的时候就开始用Excel了,所以大概会小学数学,就能学SPSS。

一、打开SPSS

SPSS比Excel稍难的一点在于它需要你亲自安装,安装教程你自己找就好了。我这里用的是SPSS25试用版,图标是这样:



sisence数据分析 excelspss数据分析_回归分析

打开以后是一个欢迎页面,它提示我们有两种文件操作方式,一种是新建文件,一种是打开你的电脑中已有的文件。如果你不希望每次打开SPSS都出现这个欢迎页面,也可以勾选左下角“以后不再显示此对话框”前面的小方框。



sisence数据分析 excelspss数据分析_SPSS_02

下面我们先尝试一下手动输入数据,点击上图左上角“新建文件”中的“新数据集”,再点击下方的“打开”,之后,你就会面对这样一个空白表格:



sisence数据分析 excelspss数据分析_数据_03

这里就和Excel很像了,每一个单元格都可以手动输入数据。但不同的是,Excel表格的上方是A、B、C、D、E……,这里全都是“变量”,而且这些“变量”全都是可以改的。怎么改?看左下角,有两个按钮,我们现在所在的叫“数据视图”,如果要修改变量,就点击“变量视图”。

二、创建变量



sisence数据分析 excelspss数据分析_SPSS_04

这样我们就进入了变量视图,现在我们可以创建一些变量。这里的变量并不完全等同于数学上的变量,你可以理解为我们创建一个表格时的表头文字,比如我要创建一个全班同学信息表,表头就包括姓名、年龄、性别等,这些都可以作为变量。现在我就创建这样一个表格。



sisence数据分析 excelspss数据分析_excel两个指标相关性分析_05

现在我创建了三个变量。变量不仅有名称,还有类型、宽度等信息。类型用的最多的是数字和字符串,如果你点击“类型”下面的某一个单元格,会弹出这样的对话框:



sisence数据分析 excelspss数据分析_sisence数据分析_06

姓名一般都是文字,所以这里选择“字符串”,年龄都是数字,那就选第一个“数字”,性别我想用0和1表示,所以也选了“数字”。

对于后面的每一项,你可以就用默认值,也可以自己修改。宽度就是每一个单元格中的最多能输入的字符数,这里姓名可能会比较长,我把它改成了10。小数位数就是你希望单元格中显示多少位小数,我都改成了0,因为我将要输入的姓名和性别的数字都没有小数。如果你想对某个变量添加一些解释说明,可以写在“标签”单元格里。

至于“值”,可以忽略,也可以自己设定,它点击它,会出现这样的对话框:



sisence数据分析 excelspss数据分析_excel两个指标相关性分析_07

现在我想用1表示男性,用0表示女性,那么我就可以这样输入:



sisence数据分析 excelspss数据分析_数据_08

然后点击“添加”:



sisence数据分析 excelspss数据分析_SPSS_09

这样就给值赋予了含义,同样我也可以在添加一个表示女性的“0”值:



sisence数据分析 excelspss数据分析_SPSS_10

最后点击“确定”就完成了。

然后再看“测量”,如果你想要修改默认值,点击它下面的单元格就会弹出来一个下拉框:



sisence数据分析 excelspss数据分析_excel两个指标相关性分析_11

变量类型为“数字”时的“测量”选项

sisence数据分析 excelspss数据分析_回归分析_12

变量类型为“字符串”时的“测量”选项

对于“年龄”,我们给它输入一个数字,它就表示这个数字本身的含义,所以它是“标度”,而对于性别,我们输入的内容只是一个代号,所以是“名义”。剩下一个“有序”,如果你输入的数字代表的一种顺序,比如考试中的名次,就选它。注意,如果变量类型不同,“测量”中的选项也是不同的。

现在我们把变量创建好了,就可以输入数据了。

三、创建数据

再回到数据视图,我们可以发现表头发生了变化,刚刚创建的三个变量的名称都出现在了表头里。



sisence数据分析 excelspss数据分析_数据_13

现在我们就可以在这三列输入数据了。



sisence数据分析 excelspss数据分析_回归分析_14

我输入了两行很简单的数据。实际操作中我们一般不会全部手工输入,通常会将现有的数据复制进去,比如我在Excel里录好了问卷,我就可以直接将数据复制到SPSS里。但是要注意,先要在SPSS里创建好变量,而且不要把Excel中的表头也复制进去。



sisence数据分析 excelspss数据分析_数据_15

Excel原始数据

sisence数据分析 excelspss数据分析_回归分析_16

复制到SPSS中的数据

接下里你可以将这个表格保存为SPSS所用的sav格式文件,点击“文件”→“保存”,弹出下面的对话框:



sisence数据分析 excelspss数据分析_SPSS_17

选择保存路径,改一下文件名,保存类型就用默认的sav,再点左边的“保存”就可以了,下次可以直接用spss打开数据。

四、相关分析与回归分析

示例数据:



sisence数据分析 excelspss数据分析_SPSS_18

上面的表格是一些城市的经济社会指标,我以此为例,展示一下相关分析和回归分析这两种常用的分析方法。

1、相关分析

相关分析研究的是两个变量之间线性相关的程度,公式是:



sisence数据分析 excelspss数据分析_数据_19

这是《概率论与数理统计》教材上的公式,你并不需要记住,你只需要知道我们需要计算一个r的值,这个值在-1到1之间,越接近于1,两个变量就是越是正相关的,越接近-1,两个变量就越是负相关的。在SPSS中,依次点击分析→相关→双变量,弹出这个对话框:



sisence数据分析 excelspss数据分析_excel两个指标相关性分析_20

左边是我们的数据中的变量,你想研究哪些变量之间的相关性,就把哪些变量放到右边去。当然,可以全都选。



sisence数据分析 excelspss数据分析_SPSS_21

现在,左边空了,变量全都移到了右边,其他的地方不用动,直接点确定。

SPSS给了我们一个庞大的表格,我截取其中一部分:



sisence数据分析 excelspss数据分析_excel两个指标相关性分析_22

横纵对照,就是两个变量的相关性情况,比如,先看前两个变量,非农业人口数和工业总产值:



sisence数据分析 excelspss数据分析_数据_23

皮尔逊相关性就是上面那个公式计算的r值,每一个变量都和它自己是完全相关的,所以对角线上的皮尔逊相关性都是1,如果是两个不同变量,a和b的相关性=b和a的相关性,所以这里我们看到了两个0.684,这表示非农业人口和工业总产值的相关系数是0.684,算是比较接近1。“Sig.(双尾)”表示显著性水平,不知道它是怎么来的也没关系,你只需要知道这个数字越小越好,我们一般把它分为三个水平,①小于0.01,我们有99%的把握认为这两个变量是相关的,②小于0.05,我们有95%的把握认为这两个变量是相关的,③小于0.1,我们有90%的把握认为这两个变量是相关的。

这里的的sig小于0.01,所以是最高的显著性水平,我们可以认为这两个变量是相关的,通过了相关性检验。在SPSS中,相关系数后面的星号*个数表示不同的显著性水平,0.01显著性水平用两个星号表示,所以你可以在0.684的右上角看到两个星号**。

我们再看完整的表格,有的变量之间的相关系数的显著性超过了0.01但小于0.05,所以只有一个*。实际的操作中,严格一点的话,我们只接受显著性小于0.05的值,宽松一点的话,显著性小于0.1就能接受,具体怎么用,看你自己的情况。

在一个完整的数据分析过程中,相关分析是其他分析的前戏,通过了相关性检验,我们就可以做其他分析了。

2、回归分析

回归分析其实就是看两个变量之间的关系能不能表示成一个函数,如果我们把表格中的数字看做是一个点对应不同坐标轴的值,比如我们的数据中的非农业人口数和工业总产值,分别对应x轴和y轴的值,画在同一个坐标系中,就像这样:



sisence数据分析 excelspss数据分析_数据_24

大致可以看出两个变量之间存在着线性关系,而我们要找到他们的关系,就是最简单的一元线性回归分析,也就是检验自变量x和因变量y之间的关系能不能表示成函数y=ax+b。

在SPSS中,依次点击分析→回归→线性,弹出这样的对话框:



sisence数据分析 excelspss数据分析_sisence数据分析_25

现在,我们可以假设非农业人口数和工业总产值之间的关系可以表示成y=ax+b,至于谁是x谁是y,你可以猜测,直觉告诉我们非农业人口越多,工业总产值越大,那么我们就将工业总产值作为y,放到“因变量”中,非农业人口数作为x放到“自变量”中。点击确定,SPSS为我们输出了结果:



sisence数据分析 excelspss数据分析_excel两个指标相关性分析_26

一共得到了四个表格,第一个可以不用管。第二个模型摘要,里面给出了一个很重要的指标,叫R方,也叫拟合优度,它的值在0到1之间,越接近于1,说明自变量对因变量的解释力度越强,这里的0.468,你可以理解为自变量可以解释46.8%的因变量的变化,这属于较高的解释力度。第三个表格输出的是方差分析的结果,暂时你也不需要知道它是干嘛的。

最后一个表格是回归系数表格,也是最重要的一个表格。“B”表示回归系数,两个系数分别是-2396882.318和61919.281,第一个是y=ax+b中的b,第二个是y=ax+b中的a,因此自变量和因变量的关系可以表示成函数y=61919.281x-2396882.318。“标准错误”准确叫法应该是“标准误”,一个辅助的值,可以忽略。“标准化系数beta”其实就是前面说的相关系数。再后面的“t”叫t统计量,由它得到最后一列的显著性。怎么看显著性前面已经说过了,越小越好,这里自变量(非农业人口数)的显著性<0.01,这意味着回归系数通过了检验。

以上是一个自变量和一个因变量之间的回归分析,实际中,一个因变量可能同时受到多个自变量的影响,这就要用到多元线性回归了。其实也不复杂,做法还是和前面一样,但是要多加一些因变量,比如,我现在假设货运总量和批发零售住宿餐饮从业人数也对工业总产值有影响,把这两个变量加入到自变量中:



sisence数据分析 excelspss数据分析_回归分析_27

现在,我们要看R方和系数的变化:



sisence数据分析 excelspss数据分析_回归分析_28

sisence数据分析 excelspss数据分析_excel两个指标相关性分析_29

可以看达到R方变成了0.635,意味着自变量增加后,解释力度提高了。而系数的表格里,我们可以看到一个常量和三个自变量的系数,根据这四个数字你就可以写出一个有三个自变量和一个常数项的多元回归方程。具体来看,非农业人口不再显著,显著性为0.483,而新添加的货运总量的显著性是0.001,通过了检验,也是唯一一个通过检验的自变量,说明只有货运总量可以认为是对因变量有影响的。至于为什么另外两个自变量不显著,这涉及到多重共线性,具体是怎么回事我以后再说吧,你只需要注意,遇到这种情况时,尝试换一换自变量。

我们上面分析的数据都是数字,这叫数值数据,还有一些数据并不是数字,而是类别,比如性别、地区、行业等,不能定量,只能定性,这叫分类数据,在现实中有很多分类数据作为变量的例子,比如不同性别带来的预期寿命的差异。如果分类数据只有两类,如男性或女性、已婚或未婚,给他们分别赋值1或0,再做回归,也能得到结果。但有的分类数据不止两类,这就是另一个问题了。

会用相关分析和回归分析,算是进入科研级数据分析的第一步,对于分析问卷和简单的统计报表是够用了,稍微复杂一点的分析方法后面再讲。