SPSS软件应用(3)北京大学公共卫生学院授课教师:张敬旭变量编辑和转换-2•日期的计算•计算产生新变量•赋值产生新变量•统计分析:求变量的频数日期计算Date/Time用日期与时间进行计算两个日期之间的计算Date1与Date2之差以“天”为单位结果变量:day,单位为“天”变量标签生成的新变量:练习•用zong.sav数据库练习日期变量计算–计算儿童年龄(天)–计算儿童年龄(月)通过计算产生新变量computeCompute菜单特点•目标变量可以是新变量,也可以是已有的变量(此时系统会弹出提示对话框加以确认)。•赋给变量的值可以是一个常数(数值、日期等),也可以是从已有变量值或系统函数计算而来的值。SPSS提供了多达70余种的系统函数(数值变换、时间变换、统计概率计算等)。•操作记录可以是所有case,也可以设定逻辑条件,即只对满足条件的记录加以赋值。其余记录的相应变量或保持原状或被赋为缺失值。要求:根据出生体重小于2500克划分低出生体重组(=1)和正常出生体重组(=0)(系统默认)•Transform菜单Compute命令新变量数据库•如果出生体重小于2500克划分低出生体重组(=1)和正常出生体重组(=2),则需要使用“IF”对话框.–第一步同上面操作–第二步再次选择Transform菜单–第三步定义已生成变量LBW=2,同时点击“IF”子对话框。–第四步定义条件,即birthw2500克Compute命令SPSS对话框如下:•计算BMI指数–公式BMI=体重(kg)/身高(m)2–SPSS程序:transform菜单下打开compute子菜单产生一个新变量:bmi=体重/((身高)**2)常用数学函数•ABS绝对值•ARSIN反正弦值•ARTAN反正切值•COS余弦值•EXPe的数值表达式次幂•LG10以10为底的对数值•LN自然对数值•RND四舍五入后得到整数值•SIN正弦值•SORT平方根•TRUNC截尾以后得到整数值练习•计算母亲的BMI指数•母亲身高值四舍五入取整后生成新变量(new_h)。•儿童出生体重转换成千克为单位的新变量(new_bw)。重新赋值产生新变量根据已计算产生的变量BMI,判断母亲为肥胖、超重还是正常。SPSS程序:Transform菜单Recode命令Recode……..Intodifferentvariables定义新的变量名:bmi_gr新值及旧值变量根据BMI判断肥胖与否根据bmi对记录进行分组,bmi:正常:18.0-23.9;超重:24.0-27.9;肥胖:>=28.0。问题:当bmi=23.91时,bmi_gr的取何值?根据上述recode方法,bmi_gr为缺失值!解决办法:从大到小赋值RECODEbmi(28.0thruHighest=3)(24.0thru28.0=2)(18.0thru24.0=1)INTObmi_gr.EXECUTE.也可以如下赋值:增加小数点位数练习•打开data1.sav数据,根据已产生变量BMI进行分组:–正常–超重–肥胖•求变量的频数:•analyze---descriptivestatistics---frequencies频数:当汇总大量的原始数据时,把数据按类型分组,其中每个组的数据个数,称为该组的频数。频数表(频数分布):表示各组及它们对应的组频数的表格称为频数表或频数分布。练习:用SPSS绘制频数表•SPSS直接输出的是精确频数表•传统意义频数表(分布表)的作用:了解计量资料的分布规律。–制作传统意义上的频数表需要利用Record过程对相应变量进行重新赋值即可。•频数表的编制编制步骤:1.求极差(又称全距)R;2.确定组数n、组距i,并写出组段;3.列表划记。具体步骤•将绘制频数表的变量按从大到小的顺序排列,(使用排序方法或Frequency过程)求出变量的最大值、最小值,计算全距(极差)。•根据样本量和极差确定组段数,计算组距,写出组段。•使用Record过程建立一个新变量用于记录组段号•使用组段号变量对原变量进行统计描述、绘图等,即可得到需要的频数表。•找出最大值、最小值(数据排序、描述性统计)--data→sortcasessortby-身高sortorder-ascending/decending最小值为144cm,最大值为176cm,故极差(全距)R=176-144=32cm•确定组数。一般根据样本量的多少分成8-15组。理论上组距等于极差除以组数。但不拘泥于计算结果,而常常取一个比较好处理的数。打开表1.sav数据库•全距=176-144=32cm•组距=全距/10=32/10≃3cm(四舍五入)•组段:上限、下限–144~146.99–147~149.99–……–174~176重新赋值(重新编码新变量组段)Re...