1、第十四章 对事件史原始数据进行预处理 在第十三章中,我们对事件史分析的基本概念和模型做了介绍。但在事件史分析的实际操作中,研究人员常常发现数据预处理是一项很麻烦的工作。在应用其他分析方法时,输入的数据资料都往往已经具备相当标准化的格式,无需再进行处理。与此相比,应用事件史分析的实际数据格式却往往因不同的调查、不同的专题而有数据格式方面的很大差别。当然,研究人员可以使用一些编程语言如、等程序将原始数据加工为他们所需要的格式,但是这项工作往往需要研究人员具有这些编程语言的专门知识,有时甚至需要专业程序员才能完成这项工作。所以,我们经常遇到这种情况,应用事件史分析方法的研究人员并不太了解编程工作,他
2、们希望能用比较熟悉的统计软件的命令将实际拥有的数据改造为一定的格式。本章的目的就是介绍如何应用统计软件包中的编程语言来完成十分复杂的数据格式加工的工作。我们将主要讨论在事件史分析中经常遇到的两个方面的数据处理问题:一个是如何计算生存持续期;另一个是如何将调查数据由以案例为单位的格式改变为以一定时间为单位的格式。本章将用六个例子来示范运用编程进行数据处理的技术。理解和掌握这五个例子将会十分有助于那些准备应用软件编程来进行数据处理的研究人员。同时,这些例子对于那些熟识和的用户也会有所启发。一、输入数据类型 事件史数据有时也称为生命时间、生存时间或失败时间。总的来说,它们都是关于某一事件是否发生和何
3、时发生的信息。如果这一事件在研究者结束观察时还没有发生,我们就说这一案例被删截了。几乎所有的事件史数据都是与时间相关联的。当事件的自变量随时间过程而发生变化,我们称其为“随时间变化”或“动态变量”。与此相对,在常规横贯研究中使用的大多数据在不同时间上是固定不变的,或称之为“静态变量”。它们或者是个人或集体在某一时点上的静态状况,或者是在时间过程中固定不变的情况。纵贯数据可以取自不同的来源,但是固定案例的追踪调查和时点调查中询问历史回顾问题是较为常见的纵贯数据来源。随时间变化的信息可以按两种形式记录于资料之中,它们或者是按“记录”进行排列(在资料中以行的形式出现),或者是按“变量”进行排列(在资
4、料中以列的形式出现)。根据研究设计的需要,每个案例的时间(或变量)的记录数量既可以是相等的,也可以是不相等的。我们可用下面一些例子来说明输入数据在格式类型方面的不同之处。(一)用变量编排时间信息,时间变量的个数随案例而变化(二)用个数相等的时间变量编排时间信息并以编码标志事件发生(三)用记录编排的时间信息、时间记录不等量(四)用记录编排时间信息、等量的时间变量 另外,我们对于“案例”(cases)的概念也需要进一步加以区分和明确。在诸如线性回归、方差分析等静态的常规分析方法中,调查样本的案例自然与分析单位(units of analysis)一致。然而对于事件史分析而言,由于时间的引入,分析单
5、位不再像上述常规方法那样简单地等同于案例。因此,调查的样本规模与要进行分析的数据规模之间存在着区别。很多事件史分析都不是在个人案例为分析单位的水平上进行的,而是在一种时间单位如持续期(spell)的基础上进行的。于是,当一个样本案例多次发生某一事件时就包含多个持续期的信息。比如,表中的第一个案例生育过三个孩子,就意味着她将提供多个需要分析的持续期。在离散时间模型中,分析数据的案例是由风险集及其时间间隔两者所共同决定的,它的分析单位可以是人年或人月(person year of person month)。很明显,在事件史分析中,分析案例的总量远远大于样本规模。正因为如此,我们将在本章中特别区分
6、这两个概念。读者在后面的例子中将会看到,将数据从样本案例为口径的格式转换为一套新的以时间单位为口径的工作数据文件(working data set),往往是一项必不可少而又难度颇大的工作。在处理事件史数据时的一个关键问题是在隐含时间或明确时间信息的基础上计算出每个持续期的时间长度。在、和软件中拟合风险模型时都需要两个方面的信息来作为因变量的输入,即持续期的长度和一个用来标志删截状况的虚拟变量。软件本身提供了强大的数据转换功能,它既可以完成将以样本案例为口径的数据改变为以持续期为口径的工作数据,又可以完成计算持续期长度的工作,并且的编程工作相对来说比较简单高效。应用软件处理事件史数据时,仅仅使用
7、内部输入程序中的命令或其他读入或混合系统数据文件的命令是远远不够的。我们常常还需要使用命令程序,并在其中使用、及等命令来完成资料的输入。当我们需要在读入新的案例时仍然保留某些变量的前一个案例相应值的时候,命令极为有用。命令可以使很多变量完成一些同样的基本转换。对于明确时间信息,使用函数(即年月日函数,计算某个日期距年月日所经历的天数)可直接计算出各个日期之间的时间间隔长度。然而,对于隐含的时间信息,可以应用命令(意为计数)加上函数与(即最大值与最小值)于系统变量(即输入数据时系统自动生成的内部变量,此变量可标志案例的序号,但增加或删除案例后,此系统变量会相应发生变化),来计算持续期长度。总的来
8、说,当时间信息编排为记录时,数据改造比较容易。对于这种类型的数据,常常使用函数(意为时差)加上语句来强制对一个样本案例进行改造。命令(意为转置)可以用来轻易地对行和列的数据进行转置,这样我们就可以应用那些本来是用于改造记录而设置的命令。换句话说,当时间信息被编排为许多变量时,比较好的策略是先对数据进行转置,然后将变量作为记录来进行处理。在一些为了满足特别需要的处理工作时,还要使用(意为汇总)和(意为列表)、(意为匹配文件)等命令,使文件与表格有针对性地做匹配合并或“分散”()。在后面的例子中,我们将示范所有这些命令的应用。二、明确时间信息数据的处理(一)例:对第一类数据(需计算各风险期长度)的
9、改造 例数据结构及所需完成的改造工作 例程序命令注释(二)例:对第一类数据(各风险期长度已知)的改造 例数据结构及所需完成的改造工作 例的程序命令注释(三)例:对风险期案例的条件性选择及统计 例数据结构及所需完成的工作 例程序命令注释三、隐含时间信息数据的处理 与明确时间信息格式的数据处理相比,对隐含时间信息格式数据进行改造显得更难一些。这是因为它只能通过变量或记录的所在位置来表示时间。在处理这种类型的数据时,研究人员也许需要多次地输入和输出数据,再将输出数据以不同形式合并在一起。(一)例:对第二类数据的改造 例数据结构及所需完成的改造工作 例程序命令的注释(二)例:将第二类数据改造为含动态变
10、量的离散时间模型数据 例将示范如何应用程序来为离散时间模型分析进行数据处理工作。离散时间模型分析需要将每个事件间隔期再分成离散的时间区间,比如年或月,然后对每个时间区间可观察到事件发生的概率进行估计。每个区间的风险集是一批在区间开始时尚未发生事件的案例。四、例:生育史人年数据改造 配合本书第七章中根据生育史人年数据进行泊松回归以取得年龄别生育率,本节将通过例示范如何将实际生育史调查数据改造为泊松回归所用的人年数据格式。该程序原本为计算年全国生殖健康调查数据的生育率而设计。在示范数据中仅保留个案例和个变量,但大致保持原调查数据结构的基本格式。如表所示,这是一种宽格式时间数据。五、讨论 本章提供了
11、若干例子用以示范如何应用软件来进行不同形式的事件史数据的加工处理。是一种功能强大并具有相当灵活性的统计软件包,它能够在很大程度上满足处理事件史数据的多种要求。借助这个软件中提供的种种命令,研究人员几乎可以解决任何类型的数据处理问题。本章作为事件史分析之前数据准备的技术介绍,只是着重讲解了如何计算作为事件史分析的因变量风险期间隔长度以及如何将调查案例改造成以某种时间单位为口径的事件史分析案例。尽管本章中没有专门讨论如何从不同类型的输入数据中加工出时间变化协变量数据的程序命令,但读者可以从本章所提供的示范程序命令中得到启发,因为它们的处理过程与本章提供的范例是非常类似的。比如,软件中的需要对每一时
12、间单位有一套变量(一般都为虚拟编码)来作为时间变化模型的输入数据。如果这些关于协变量的时间信息是直接使用日期编码,那么现在就需要再做类似本章例的数据改造处理,只不过是完全反过来做而已,即根据明确时间信息来产生一套隐含时间信息的虚拟变量。更为具体地说,所需要的这套虚拟变量必须具有以下格式,即每个样本案例有相同的变量数目,而其中每个变量所在的位置可以表示累积时间长度。显然,这类问题可以应用软件中的多种程序功能,使得数据处理工作变得较为容易。基本概念 数据处理 分析单位 样本案例口径 时间单位口径 生存持续期 删截 用变量编排时 间 固定变量 随时间变化的变量 个数相等的时间变量 用记录编排的时间 隐含的时间信 息 明确的时间信息 人年本章要点 事件史分析涉及的纵贯数据的处理是一项比较困难的工作。本章主要讨论了如何应用程序命令计算生存持续期的方法和如何将以案例为单位的数据改变为以一定时间为单位的数据格式。本章要点 本章介绍了四种通常采用的原始数据格式类型。本章要点 本章以六个程序分别示范了如何进行明确时间信息数据和隐含时间信息数据的处理,其中包含如何将实际生育史调查数据改造为生育人年数据格式。参考文献,(),(),
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。