第四讲 SAS的描述统计 (1)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Income
2200 2730 2496 1760 2820 2250 3170 1200 1776 1980 2455 1080 1986 3369 1530
Outgo
2060 2236 1455 1040 2366 1966 2400 1250 1350 1794 2550 1380 1200 2305 1316
Outgo
1550 1365 2730 1530 1900 2050 2184 1170 2496 2760 1275 1810 2820 1976 1970
பைடு நூலகம்
ID
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
R_ID
2 1 1 1 1 2 1 2 2 2 1 2 2 1 2
例3. 1) 使用BY语句, 将上例中的数据按地区(R_Id)分 组 计算统计量: Proc sort data = mylib.sryzc; by R_Id; run; proc means data = mylib.sryzc n mean median p1 p5 p95 p99 q1 q3 max min; var Income; by R_Id;
2) 使用CLASS语句, 按地区(R_Id)分组计算统计量: proc means data = mylib.sryzc n mean median p1 p5 p95 p99 q1 q3 max min; var Income; CLASS R_Id; run;
使用CLASS语句输出结果:
The MEANS Procedure Analysis Variable : INCOME Income R_ID Obs N Mean Median 1st Pctl 5th Ptcl 95th Pctl ---------------------------------------------------------------------------------------------------------------1 14 14 2803.71 2775.00 1760.00 1760.00 4275.00 2 16 16 1889.44 1983.00 1080.00 1080.00 2460.00 ---------------------------------------------------------------------------------------------------------------Lower Upper R_ID Obs 99th Pctl Quartile Quartile Maximum Minimum ---------------------------------------------------------------------------------------------------------------1 14 4275.00 2400.00 3305.00 4275.00 1760.00 2 16 2460.00 1740.50 2192.00 2460.00 1080.00 ----------------------------------------------------------------------------------------------------------------
(4)使用Output语句(输出语句) Output out= 数据集名 < 输出统计量列表> ; 输出统计量列表形式: 1) 统计量关键字= ;新数据集中统计量用原变量名 2) 统计量关键字=新名字列表 3) 统计量关键字(变量列表)=新名字列表 例4 (1)把数据集mylib.bclass中变量height和weight的均值 输出到新数据集result2. Proc means data=mylib.bclass noprint ; var height weight ; output out=result2 mean= ; Run ; Proc print data=result2;run;
ID
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
R_ID
2 2 1 2 2 2 2 1 1 1 2 1 1 1 2
Income
1794 1716 3410 1765 2184 2050 2460 1976 2850 4275 2010 2236 3305 2400 2250
1、MEANS过程(均值过程)
(1) 语法格式 Proc means <选项> <输出统计量关键字列表> ; < Var 分析变量名列 ;> <Class 分类变量名列 ;> <Freq 频数变量 ;> <by 分类变量名列 ; > <Output out=数据集名 < 输出统计量列表> ; > Run ;
输出结果:
MEANS 过程
分析变量:x N 最小值 最大值 均值 标准偏差 标准误差 偏差系数 100 64.30 84.30 73.66 3.94 0.39 5.35
例2.下表为两个不同地区居民家庭收入和支出情 况的抽样调查(单位:元),试分别统计收入和 支出情况。
将下表中数据输入成Excel文件sryzc.xls。4个变量名 分别为:ID、R_ID、Income和Outgo,该四个变量 分别表示“家庭编号”、“地区编号”、“家庭总收 入”和“家庭总支出”。 首先将其导入为SAS数据文件mylib.sryzc。
其SAS输出结果与说明
proc means; 默认的5个统计量
MEANS 过程
分析变量:x 标准偏差 最小值 3.9400815 64.3000000
N
100
均值 73.6600000
最大值 84.3000000
proc means n min max mean std stderr cv maxdec=2;
run;
使用BY语句分区域输出统计量:
R_ID=1 The MEANS Procedure Analysis Variable : INCOME Income N Mean Median 1st Pctl 5th Ptcl 95th Pctl 99th Pctl -------------------------------------------------------------------------------------------------14 2803.71 2775.00 1760.00 1760.00 4275.00 4275.00 -------------------------------------------------------------------------------------------------Lower Upper Quartile Quartile Maximum Minimum -------------------------------------------------------------------2400.00 3305.00 4275.00 1760.00 --------------------------------------------------------------------
Output <选项> < 输出统计量列表> ; 输出统计量列表形式: 1) 统计量关键字= ;新数据集中统计量用原变量名 2) 统计量关键字=新名字列表 3) 统计量关键字(变量列表)=新名字列表 (2)把变量height和weight的均值(新名分别取为hmean和wmean ) 和标准差(新名字分别取为hstd 和wstd )输出到新数据集result3. Proc means data=mylib.bclass noprint ; var height weight ; output out=result3 mean=hmean wmean std=hstd wstd ; Run ; Proc print data=result3; run;
R_ID=2
Analysis Variable : INCOME Income N Mean Median 1st Pctl 5th Ptcl 95th Pctl 99th Pctl 16 1889.44 1983.00 1080.00 1080.00 2460.00 2460.00 --------------------------------------------------------------------------------------------Lower Upper Quartile Quartile Maximum Minimum -------------------------------------------------------------------1740.50 2192.00 2460.00 1080.00 --------------------------------------------------------------------
第九十九百分位数
置信限 置信下限
range
极差
UCLM
置信上限
(3) 使用CLASS语句或BY语句
Class 分类变量名列 ;
by 分类变量名列 ;
两个语句的区别是: ● 使用BY语句时要求数据集须按BY变量排序, 使用CLASS语句无此要求。 ● 使用BY语句时输出按BY变量的每个值分别提供一个表, 使用CLASS语句则将所有结果排列在一个表之中。
median
mode cv max min sum
中位数
众数 变异系数 最大值 最小值 总计
qrange
p1 p5 p10 p90 p95
四分位数间距
第一百分位数 第五百分位数 第十百分位数 第九十百分位数 第九十五百分位数
sumwgt
css uss
加权值总计
校正平方和 未校正平方和
p99
CLM LCLM
Means过程默认输出统计量只有五个: N, Mean , Std , Min , Max
(2).应用举例
例1:某单位对100名健康的女大学生测定了血清总蛋 白含量(g/L),试做单变量描述性统计分析。 data aa; input x @@; cards; 74.3 78.8 ……70.4 ; proc means; proc means n min max mean std stderr cv maxdec=2;
对数据集mylib.sryzc中的Income变量计算简单统计量, 用如下MEANS过程即可: proc means data = mylib.sryzc; var Income; run; SAS运行结果:
在PROC MEANS语句中使用统计量关键字列表。输出数据 集mylib.sryzc中收入(Income) 的观测个数、均值、中位数、 第一百分位数、第五百分位数、第九十五百分位数、第九十九 百分位数、第一四分位数、第三四分位数、最大值、最小值。 proc means data =mylib.sryzc n mean median p1 p5 p95 p99 q1 q3 max min var Income; run;
Proc means 主语句选项:
1.DATA=SAS数据集:指出SAS数据集的名称,若省略,则使用最近产生的数据集。
2.MAXDEC=数字 指定该过程输出结果中小数部分的最大位数(0到8).默认是2。 3. FW=域宽 给出该过程用来打印每个统计量的字符长。 默认是12。 4. ALPHA= 置信水平为1- . 默认为 =0.05.
运行结果
可以计算的描述性统计量关键字及其含义见下表。
关键字 n 所代表的含义 有效数据记录数 关键字 skewness 所代表的含义 偏度
nmiss
mean std stderr var
缺失数据记录数
均值 标准差 标准误 方差
kurtosis
t probt q1 q3
峰度
分布位置假设检验之t统计量 上述t统计量对应的概率值 第一四分位数 第三四分位数
2.3 编程实现描述性统计计算与绘图
SAS提供多个不同的过程步来实现统计量的计算,它们
在功能范围上有许多的重复,本段介绍计算常用统计量的三 个过程: 1. MEANS 常用来计算数值型变量的均值、标准差等统计量 2. UNIVARIATE 常用来计算数值型变量的均值、标准差等统计量、 绘制一些统计图 3. FREQ 常用来计算分类变量取值的频数