首页 理论教育 提升统计表打印:SAS基础教程

提升统计表打印:SAS基础教程

时间:2023-08-10 理论教育 版权反馈
【摘要】:为此可以在table语句中增加选项“misstxt='无数据'”,使得这4个表项中输出中文“无数据”。为了得到中文输出,在程序中加上format过程和format语句,即将例6.4的程序改为:提交程序后得到下列3张表:性别男性别女all练习题改进6.2.5节中以tabulate过程打印的三维统计表。

提升统计表打印:SAS基础教程

6.2.1至6.2.5节介绍了用tabulate过程打印统计表的一般方法,但是实际工作中对于tabulate打出的表格需要作一些改进,例如需要输出变量值是中文,又如需要对表格结构作些修改以更符合我国表格的形式。有时候由于分类表格的交叉,分类变量划分的某些表项内可能无数据可算(如例6.4中某些表项),因此希望打印出的文字符号能说明该组合中根本无样本,最好用中文说明。为了便于比较,这里以数据集highweig打印身高的三维统计表为例,以性别、地区和班级为分类变量,说明改进的方法。

例6.7 对于例6.4的输出表格加以改进。

解 对于例6.4的结果有如下考虑:

(1)这时男生的表中有1个表项内输出圆点,原因是无数据可算;女生的表中有3个表项输出圆点,原因是无数据可算。在SAS输出中圆点表示输出的数据缺失,其原因有多种:可能是原始数据缺失,也可能是运算问题,例如除数是0或某个sin的值大于1而要求它的弧度。在例6.4中不存在运算问题,只要有1个观测值也能求平均值,输出中出现圆点的真正原因是无数据可平均。为此可以在table语句中增加选项“misstxt='无数据'”,使得这4个表项中输出中文“无数据”。

(2)为了使左上角的表项中显示行变量和列变量的名称,如希望左上角的表项中填写“地区\班级”以说明行名是“地区”,列名是“班级”,只要在table语句中增加选项“box='地区\班级'”就能达到目的。

(3)原输出的表格中“mean”占一行,“high”占一行,希望把这两行合并,改为输出“平均身高”;原表格中“area”单独占一行,希望把该行删去。这只要利用“两个单引号间没有任何符号就表示删去该行”这一技巧,在table语句中把“area all”改为“area=''”同时把“mean*high*(team all)”改为“'mean=''*high='平均身高'*(team=''all)”就行。为了得到中文输出,在程序中加上format过程和format语句,即将例6.4的程序改为:(www.xing528.com)

提交程序后得到下列3张表:

性别 男

性别 女

all

练习题 改进6.2.5节中以tabulate过程打印的三维统计表。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈