第三节 数 据 库
数据库(databases),即存放数据的“仓库”,是将不同研究对象不同观测指标的观察结果逐一有序记录的二维表格,如表2-2。数据库具有统一的结构和不同的建库方法,数据库之间还可以相互导出和导入。
一、数据库的结构
数据库主要由变量名(字段名或指标名)和变量值(指标值)组成。
变量名(variable name):即指标名,又称字段名,是观察指标的名称。不同软件对文字的识别能力不同,在建立数据库时变量名以英文字母为宜。如Excel对中文的识别能力较好,变量名可以用中文或英文,但SAS等识别能力较差,一般不用中文变量名。
变量值(variable value):建立数据库时,用来表示观察指标数值大小或特征属性的阿拉伯数字。表示变量大小的数字称为数值数字,如年龄为5岁,5即为数值数字;表示变量特征属性的数字称为分类数字,如用1表示已接种疫苗,用0表示未接种疫苗,这里的1和0即为分类数字。
二、建立数据库的方法
由于软件不同,建立数据库的方法各有不同,常见的建库软件有SAS、SPSS、Excel、Epidata等。
例2-2某医院收集15例病人的资料如下,试建立数据库。
SAS分为临时文件和永久文件两类。临时文件在退出SAS系统时自动被删除,永久文件则会长期保留在磁盘中。临时数据集可以用“单水平名”,即只有数据集名,如data d2_1;永久数据集名称由两部分组成(“双水平名”),前一部分是它的库名,后一部分是数据名,两部分中间用小数点连接,如data sas.d2_1。
操作过程为:点击Tools菜单,选择New Library选项,打开New Library窗口。在Name栏中输入逻辑库名,在Path栏中输入目录路径或点击右侧的“Browse”按钮选择磁盘中的文件夹,选择右侧的“Enable at startup”使其永久有效,然后点击“OK”按钮完成新库名的定义。
使用编程方式建立逻辑库时,每次关闭SAS程序后逻辑库会失效,但磁盘中的文件不会消失。使用菜单方式建立逻辑库在建立时选择“Enable at startup”选项则在每次打开SAS程序是自动生效,无需再次建立。
在永久数据库中录入数据的方法如下:
首先在指定物理地址“F:\ data \ sas”建立名为sas的数据库文件夹。打开SAS,在Editor窗口中输入以下程序:
例2-2建立数据库的SAS程序SASP2_3:
注:在SAS中常用/**/对程序添加注释,注释语句内的/**/内容(程序)不运行。
打开SPSS,在变量视图(Variable View)窗口中创建变量并对变量格式进行设定,在标签(Label)中设定其中文名以作提示。对于分类变量(如血型),可在变量值中设定分别以0、1、2、3代表O型、A型、B型、AB型,其中O型、A型、B型、AB型称为标签,血型变量的特征数字0、1、2、3称为标签值,见图2-5。在SPSS中,如果对特征数字设置了标签值,并录入了数据(见图2-6)可在数据视图(Data View)窗口中点击值标签(Value Labels)进行特征数字(标签值)与标签的替换,见图2-7。
运行Excel程序,在Excel工作表第1行A1~H1单元格输入变量(指标名),在相应变量所在列中输入变量值。A1~H1分别为编号、年龄、性别、血型、身高、体重、药物和疗效,A2至A16为15个编号,B2至B16为15个对应的年龄(值),C2至C16为性别(值)……以此类推。另存于F盘\data\excel目录下,命名为d2-2,见图2-8。
注意,Excel数据库中,必要时可适当添加批注。如性别,0:女、1:男;血型,0:O、1:A、2:B、3:AB;药物,0:对照组、1:用药组;疗效,0:无效、1:有效、2:显效……
打开Epidata,点击菜单栏中的“文件”,选择“生成调查表文件(QES文件)”,新建调查表文件。QES文件为调查表文件,用于编辑调查表,另有REC文件为数据文件,用于输入数据。
Epidata允许输入中文,但识别效果并不理想。如编辑调查表需要输入中文变量名时,需在大括号“{ }”内填写,并在“文件”菜单中选择“选项”,打开选项窗口,如图2-9对“生成REC文件”选项卡进行修改。此时将自动生成字段名,如需修改字段名可在“工具”菜单中选择“字段重命名”。
在编辑窗口中,按图2-10输入调查表信息。图中符号“#”表示该处要输入数据,每一个“#”代表一个数字或字母。如性别只需要输入1或2,即一个数字是编辑窗口输入一个“#”。同理,年龄一般为两位数,因此输入两个“#”,以此类推。可以用“##.#”表示保留小数点后一位,如体重“###.#”。编辑完毕后,保存QES文件,在“REC文件”菜单下选择“生成REC文件”,选择储存位置并选“确定”,再次打开文件即可进行数据输入,见图2-11。
数据输入完毕后,若想查看数据,可关闭REC文件,在Epidata主窗口中选择“数据处理”下拉菜单中的“数据一览表”,见图2-12。
其他数据库管理软件还有Lisrel、Microsoft Access、Sqlserver、Mysql、Oracle等。由于篇幅所限,这里不一一叙述,有兴趣者可自行了解。
三、不同软件数据库文件的导入导出
不同软件的数据库文件可以相互转换,即导入或导出。本内容以Excel数据库为基础,简单介绍SAS与SPSS的导入导出方法。
将例2-2的数据已建好Excel数据库d2-2.xls存放于F:\data\excel目录下,通过以下两种方法可将其导入SAS中。
SAS对中文的识别能力较差,在导入数据时需要将中文字符改为英文字符,以免出错。以下以Excel文件为例介绍导入方法(导入SPSS数据文件的方法与导入Excel文件相似)。
例2-2的导入数据SAS程序SASP2_4:
SPSS可直接打开Excel文件与SAS文件,通过另存为的方式直接保存为Excel文件或SAS文件。其导入Excel文件与SAS文件的方法相似,以下以导入Excel文件为例进行介绍。
点击File菜单下的Open中data选项,打开Open File对话框,在文件类型中选择“All Files (* .*),在F:\ data \ excel文件夹中找到d2-1.xls文件并选中,点击打开按钮,见图2-13。
在“Opening Excel Data Source”中设定工作表为“Sheet1”,导入数据范围为A1:H16,可设定数据的第一行为变量名(Read variable names from the first row of data),点击OK导入数据,见图2-14。
将例2-2的数据已建好SAS数据库d2_2.sas7bdat存放于F:\ data \ sas目录下,通过以下两种方法可将其导出为Excel文件。
SAS对中文的识别能力较差,在导出数据时也应尽量使用英文字符,以免出错。导出为SPSS文件方法与Excel文件相似,以下以Excel文件为例介绍导出方法。
例2-2的导出数据SAS操作程序SASP2_5:
SPSS可直接打开需要导出的d2-2.sav文件,通过另存为的方式可直接保存为Excel文件与SAS文件。其导出Excel文件与SAS文件的方法相似,以下以导出Excel文件为例进行介绍。
点击File菜单下的Save as选项,打开:Save Data As对话框,选择保存路径,在文件类型中选中Excel 97 and later(* .xls)选项,点击保存(s),见图2-15。
四、统计数据库的要求
统计数据库供统计分析用,包含不同观察对象的不同观察指标和指标值,那么收集哪些观察对象?收集哪些观察指标?……全部由分析目的决定,所以统计数据库的建立要依据研究目的而定。
统计数据库的数据一般要用统计软件分析,那么统计软件一定要正确识别数据库,准确无误地调用数据库的数据值,表现为统计数据库的有效性。
一个完整有效的统计数据库,各个研究对象的各个观察指标及其观察值应该清晰明了、一目了然,甚至需要分析的内容也能从数据库中直接读出。