SPSS宝典
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

5.4 数据的选取

通过调研和实验得到的数据量一般都很大。在数据处理或统计分析之前,需要对数据进行筛选,剔除有问题或者无关紧要的数据。有时也会根据抽样方法的需要,选取满足一定条件的部分数据进行分析,这就需要对数据进行选择。SPSS允许用户根据指定的条件对数据的个案进行选取,后续的分析操作只针对选出的数据进行。

5.4.1 数据选取的基本操作

SPSS提供的数据选取方法有5种,下面给出基本方法和操作步骤:

在数据编辑窗口,选择菜单“Data”→“Select Cases”(个案选取)命令,显示如图5.7所示的“Select Cases”(选择个案)对话框。

图5.7 “Select Cases”(选择个案)对话框

“Select Cases”对话框左侧为变量列表选择框,右侧“Select”窗口显示5个单选框,用于确定数据的选择方式。

(1)全部个案的选取方式

选择“All cases”选项,表示选择全部个案,数据编辑窗口个案没有发生变化。

(2)满足条件个案的选取方式

选择“lf condition is satisfied”选项,表示根据逻辑关系表达式选择数据,即只选取满足逻辑表达式的个案。若选择该项,其下侧的“lf”按钮将被激活。单击该按钮后,弹出“Select Cases:lf”(选择个案:如果)子对话框,如图5.8所示。

图5.8 “Select Cases:lf”(选择个案:如果)对话框

“Select Cases:lf”对话框的构成和逻辑表达式的输入方法与其他过程的“lf”对话框类似(如5.3节变量计算中“Compute Variable:lf Cases”对话框)。在左侧的变量列表框中选择原始变量名,单击右向箭头按钮,使选中的原始变量名出现在表达式框中,再利用计算面板输入所需操作符和常数。

当需要SPSS函数构成表达式的一部分时,可以在对话框的右侧“Function group”函数列表框中选择相应函数,单击该函数名,再单击旁边的向上箭头按钮(或直接双击该函数名),则该函数便粘贴在逻辑表达式的输入窗口,选择或输入相应函数的参数。

输入完毕后,单击“Continue”按钮,返回至“Select Cases”主对话框。

例如,在5.3.2节介绍的案例中,如果要选取所有录取成绩不低于400分的少数民族考生资料,可以在逻辑表达式窗口输入:民族>1&录取成绩>=400。

(3)随机个案的选取方式

选择“Random sample of cases”选项,表示随机选取数据,即按一定比例或数量随机选取指定范围的个案。若选择该项,则其下面的“Sample”(样本)按钮将被激活,单击该按钮,打开“Select Cases:Random Sample”(选择个案:随机抽样)对话框,如图5.9所示。

图5.9 “Select Cases:Random Sample”(选择个案:随机抽样)对话框

该对话框的“Sample Size”(抽样大小)窗口中显示的两个单选框确定了两种随机样本的选取方式,即:

ApproximateIy 近似抽样。这种选取方式是在数据文件中随机选取给定比例的个案数,只需在“Approximately”选项后面的窗口输入选取比例数值即可。

ExactIy 精确抽样。这种选取方式要求指定选取个案的数量,以及在前多少个个案中选取。在“Exactly”选项后的第一个输入栏中输入选取的个案数,第二个输入栏中输入选取范围的最后一个个案序号。例如,需要在数据编辑窗口中前15个个案中随机选取4个个案,可以分别输入4和15,系统将自动在前15个个案中随机抽取4个个案。

输入完毕后,单击“Continue”按钮,返回至“Select Cases”主对话框。

(4)根据时间或范围的选取方式

选择“Based on time or case range”选项,表示指定选取个案的时间或范围区间。若选择该项,“Range”按钮将被激活,单击该按钮,显示“Select Cases:Range”(选择个案:范围)对话框,如图5.10所示。

图5.10 “Select Cases:Range” (选择个案:范围)对话框

该对话框中,在“Observation”窗口中的“First Case”栏输入选取个案的起始个案序号,在“Last Case”栏输入最后一个个案序号,单击“Continue”按钮,返回至“Select Cases”主对话框。

(5)利用过滤变量选取方式

选择“Use filter variable”选项,即确定过滤变量。如果过滤变量中含有0值或缺失值,则该变量的个案将被排除在选取数据中。如果选择该项,在其下的变量选择框将被激活,可以直接在左侧的变量列表中选择过滤变量,单击右向箭头按钮,将该过滤变量移动至“Use filter variable”框内即可。

例如,在5.3.2节介绍的案例中,如果要选取所有满足基本条件的个案进行进一步的分析,可以选择“录取成绩”为过滤变量,因为在该变量中,不满足基本录取条件的个案为缺失值,将在个案选取操作中被排除在外。

(6)确定选取的数据文件的输出方式

在“Select Cases”对话框中,选择除“All cases”以外的其他4种任意一个数据选取方式时,“Output”(结果输出)窗口都会被激活,并激活其下面的3个单选框:

FiIter out unseIected cases 默认选项。在原数据文件中被排除个案的序号上画一斜杠,表示这些个案在后续的分析中不被考虑。同时,如果利用逻辑关系式或随机选取的方法选择个案,在数据编辑窗口还会新增一变量“filter_$”,该变量只取两个值:0和1,若个案被选取,变量值为1,反之为0。

Copy seIected cases to a new dataset 将被选取的个案复制到一个新的数据集中。选择该项后,系统将新创建一个数据集,原数据文件不改变。SPSS系统同时打开原数据文件和新创建的数据集。

DeIete unseIected cases 选择该项后,没被选取的个案在原始数据文件中将直接被删除,只显示选取后的个案,且无法恢复。所以应慎选该项。

输入和设置完毕后,单击“OK”按钮,执行个案选取操作。

5.4.2 数据选取的应用实例

仍以5.3.2节的提前招生录取的数据为例,下面简述操作步骤。(数据文件:compute.sav)

考虑下面两种数据选取的情况。

(1)选取所有来自于西部,且录取成绩不低于460分的男性考生资料

在数据选取方法中,选择按逻辑表达式方法。在逻辑表达式窗口中输入:性别=1&省份=1&录取成绩>=460。输出方式选择“Filter out unselected cases”。从图5.11显示的数据选取的案例分析结果(1)中可以看出,只有两个在序号前没有画斜线的个案满足选取条件。

图5.11 数据选取的案例分析结果(1)

上述操作中,“Paste”得到的Syntax语句程序如下:

      /* 数据选取的命令语句.
      USE ALL.
      COMPUTE filter_$=(性别=1&省份=1&录取成绩>=460).
      VARIABLE LABEL filter_$ '性别=1&省份=1&录取成绩>=460 (FILTER)'.
      VALUE LABELS filter_$  0 'Not Selected' 1 'Selected'.
      FORMAT filter_$ (f1.0).
      FILTER BY filter_$.
      EXECUTE .

(2)选取被录取的考生的资料,并将原始文件转换成只包含被录取的考生资料

选择“Based on time or case range”方法。在“Range”对话框中,“First Case”中输入1,“Last Case”中输入7,“Output”窗口中选择“Copy selected cases to a new dataset”,输入变量集名:录取名单。然后,保存该数据文件。图5.12是数据选取的案例分析结果(2),即新产生的数据集显示结果。

图5.12 数据选取的案例分析结果(2)

上述操作中,“Paste”得到的Syntax语句程序如下:

      /* 数据选取的命令语句.
      FILTER OFF.
      use  1 thru  7  .
      EXECUTE .