SAS课件——第16讲 描述性统计过程.ppt_第1页
SAS课件——第16讲 描述性统计过程.ppt_第2页
SAS课件——第16讲 描述性统计过程.ppt_第3页
SAS课件——第16讲 描述性统计过程.ppt_第4页
SAS课件——第16讲 描述性统计过程.ppt_第5页
已阅读5页,还剩88页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 描述性统计过程 Means过程Freq过程Tabulate过程univariate过程plot过程chart过程rank过程 2 统计关键字 3 Means过程 procmeans选项列表 by变量表 分组变量 class变量表 分组变量 freq变量 数值变量 用以表示相应记录出现的频数 weight变量 数值变量 用以表示相应记录的权重系数 var变量表 待分析的数值变量 id变量表 待分析的数值变量 output run means过程的一般格式 4 1 procmeans 5 6 2 Output语句 Output语句的选择项包括 out sas数据集指定输出数据集名 统计关键字 输出变量名字指定新数据集中的统计项 并给这些统计项的变量命名 等号右边各变量名代表var语句中对应变量的相应统计量 例如 Procmeans varx1x2 outputout statsmean mambstd sa Run 其中ma代表x1的均值 mb代表x2的均值 sa代表x1的标准差 x2的标准差不输出 7 例7 2 1利用means过程按班级class进行单变量统计 Score1数据集中含有学生成绩的永久数据集 注意by语句与class语句的不同 下面是Score1中的数据 8 ex7 2 1 libnameep D sasdata SASLX PROCmeansdata ep score1maxdec 3 vart1 t3 classclas title statisticswithaclassvariable run 9 ex7 2 1 Procsortdata ep score1 byclas run PROCmeansmaxdec 3 byclas vart1 t3 Title statisticswithbyvariable run 10 使用class语句数据集不需要sort过程排序 使用by语句数据集事先要进行排序 而且两个语句使得输出格式也有些不同 请仔细体会他们的差别 11 例7 2 2略 例7 2 3在某一年级中 测得15名男生的身高 数据存于文件 e sasdt fit1 txt 中 求出身高的平均值 标准差 变异系数和95 的置信区间 ex7 2 3 DATASTUDENT INFILE E SASDT FIT1 TXT LENGTHNAME 10 INPUTNUM NAMESEX HW PROCMEANSDATA STUDENTNMEANSTDCVLCMLUCML VARH RUN 12 Freq过程 进行统计分析首先应该对我们手头上的数据特征有一个比较明确的了解 比如数据的频率分布或者其他对数据的描述的统计量 这有助于我们对数据的特征 可能的分布有一个比较全面的了解 用于帮助我们决定进一步的研究方法和方向 我们将介绍如何用编程和INSIGHT模块进行描述性数据分析 13 例7 3 1对学生成绩进行分段统计分析 Score2 txt为含学生成绩的数据文件 把学生的平均成绩分成A 大于等于80 B 大于等于60 小于80 C 小于60 三等 由FREQ过程产生每一分数段的学生人数和占总数的百分数 libnameep e saslx datab 读入数据 infile e sasdt score2 txt inputnum t1 t3 v MEAN OFt1 t3 run PROCFORMAT 产生成绩等级的格式 VALUEvfmtLOW 60 C 60 80 B 80 HIGH A run PROCFREQdata b 对成绩各等级频数分析 FORMATvvfmt TABLESv run 14 15 PROCFREQDATA 数据集名 TABLES变量 RUN PROCFREQDATA 数据集名 TABLES变量 变量变量 变量 nocolnorownocumnofreqnopercentmissinglistout 数据集outpct WETGHT变量名 BY变量名 RUN 一般是分类变量 freq过程的一般格式 16 FREQ 频数 过程 定义输出格式的FORMAT过程 procformat 用于Fitness数据集 valueoxyfmt32 5 37 5 32 5 37 7 37 5 42 5 37 5 42 5 42 5 47 5 42 5 47 5 47 5 52 5 47 5 52 5 52 5 57 5 52 5 57 5 57 5 62 5 57 5 62 5 run 当37 5 oxygen 42 5 37 5 42 5 17 FREQ 频数 过程 综合例子 Procfreqdata fitness formatageagefmt oxygenoxyfmt tablesgroupage nocum tablesage oxygen nocum tablesgroup age listnocum tablesgroup age out outoutpct run procprintdata out run bstat21 sas 要求输出集中还包含列百分数和行百分数 18 19 20 21 22 23 24 25 26 菜单操作进行简单统计分析 利用SAS INSIGHT进行简单分析我们仍以GPA数据集为例进行窗口操作分析 具体操作步骤如下 27 进入INSIGHT模块后 选择要分析的数据集dst bclass 要看变量sex和weight的柱状图和直方图 可以 1 在表格中选中要分析的变量名sex和weight 方法是 用鼠标先选中其中一个变量列的表头 然后按住ctrl键不放 选中另一个变量列表头 2 选择菜单 分析 直方图 条形图 28 29 30 31 32 33 抽取 34 输出 35 36 分析员应用及变量的取值分布 用分析员应用进行频数统计并作分布图1 选菜单栏目的统计 Statistics 统计描述 Descriptive 频数统计 FrequencyCounts 弹出频数统计窗口 2 在弹出的频数统计窗口中选分析变量 产生频数表 3 在频数统计窗口下方选plots纽 4 在弹出菜单的条形图 Barcharts 框中点击在Horizontal前方的方框上 使之打勾 5 OK OK 则显示结果 6 击在屏幕左边的Code上显示完成分析的SAS程序 37 38 Tabulate过程 proctabulate选项列表 by变量名称 分组变量 class变量名称 分组变量 freq变量名称 数值变量 用以表示相应记录出现的频数 weight变量名称 数值变量 用以表示相应记录的权重系数 table var变量名称 待分析的数值变量 统计量列入相应的表单元格 run 39 tabulate过程中table语句用来实现具体的表格绘制过程 其后是作为表格三个维度的分组变量 表示三个维度的变量间以逗号分隔 三个维度分别是页 page 横轴 side 和纵轴 top 三个维度不必全部指定 如果只指定一个维度 如本例 SAS将其当作纵轴处理 如果指定两个 SAS将其作为横轴和纵轴处理 前面的变量为横轴 后面的变量为纵轴 若指定三个维度 在最前的变量为页 中间的为横轴 最后的为纵轴 40 同一维度可以是一个变量 也可以是多个变量的排列组合 多个变量的排列组合形式如下 1 并列 变量间以空格相间隔 如 ab 的表格形式如下 2 交叉 变量间以星号 相连接 如 a b 的表格形式如下 3 混合形式 变量间以空格或星号分隔 必要时加圆括号 如 a bc 的表格形式如下 41 另外 和变量一同在table语句中出现的还有一些表示特定统计量的SAS关键词 可以控制相应统计量在表格中的显示 Tabulate过程可以计算的统计量及其在table语句中的名称如下表 42 Summary过程 ProcSummary与ProcMeans有相同的功能与用法 后者缺省为print 将结果输出到OUTPUT窗 前者缺省为noprint 不输出结果到OUTPUT窗 PROCSummaryDATA 数据集名maxdec 位数fw 域宽print输出统计量名列 VAR变量名列 CLASS变量名列 BY变量名列 ID变量名 OUTPUTOUT 数据集名记入数据集统计量名列 RUN 43 在procmeans或procsummary中 可用多个output语句 它有三种方式规定输出数据集中的统计量 statistic keyword 仅适用于一个统计量多个变量 statistic keyword name list statistic keyword variable list name list 可指定仅对某些变量计算这一统计量 缺省情形是在输出数据集中由变量 stat 来注明统计量名 44 例 设输入数据集有变量X1 X5 以下给出OUTPUT语句及选项OUT 生成输出数据集包含统计量和名字 1 outputout b1mean 输出数据集 1中包含5个变量的均值 变量名为X1 X5 2 outputout b2mean m1m2var x3 输出数据集 2中包含变量X1 X2的均值 变量名为m1 m2 以及x3的方差 变量名字仍为X3 3 outputout b3mean x3x4 m3m4std x5 s5 输出数据集 3中包含变量X3和X4的均值 存放均值的变量名为m3和m4 变量X5的标准差存放在S5中 45 4 outputout b4mean max x1 sum x3 autoname 输出数据集 4中包含 5个变量的均值 变量名为x1 Mean x5 Mean 变量X1的最大值 变量名为x1 Max 变量X 的总和 变量名为x3 Sum 5 当使用Class语句时 与由OUTPUT语句生成的数据集内容有关的选项和语句 PROC的选项nway WAYS语句和TYPES语句 见Bstat33 sas 46 univariate过程 procunivariate选项列表 by变量名称 分组变量 class变量名称 分组变量 freq变量名称 数值变量 用以表示相应记录出现的频数 weight变量名称 数值变量 用以表示相应记录的权重系数 histogram变量名称 选项列表outputvar变量名称 待分析的数值变量 run univariate过程和以上两个过程的格式非常相似 相同的语句和选项其含义也相同 所不同的是某些统计量只能在univariate过程中计算 如众数 以及univariate过程中所具有的绘图功能 histogram语句即用来指示SAS对其后所指定的变量绘制直方图 其后的选项用来指示SAS添加不同类型的拟合图形 如正态分布的分布密度曲线 47 UNIVARIATE过程除了可以完成与MEANS过程相同的基本统计量外 还可以计算变量的极端值 分位数 生成频率表 并支持对数据进行正态性检验 UNIVARIATE与MEANS过程不同的功能包括 描述变量极端值的情况 计算分位数 如中位数 1 4和3 4分位数 生成若干个描述变量分布的图 生成频率表 对数据进行正态性检验 48 49 RPOCUNIVARIATEDATA 数据集名noprintmu0 值plotnormal VAR变量名列 BY变量名列 ID变量名 OUTPUTOUT 数据集名关键名 变量名 PCTLPTS p1 p2 PCTLPRE 前缀词 RUN 用户另指定要求计算的p1 p2 分位数 50 procunivariatedata fitness varruntimeoxygen idage run procunivariatedata fitnessnoprint varruntime outputout percentsp10 op10p90 op90median medianq1 q1q3 q3pctlpts 2080pctlpre pqrange iqrangerange range procprintdata percents run 51 procsortdata sasuser fitnessout sorted bygroup run procunivariatedata sorted varweight bygroup run procunivariatedata sasuser fitnessplotnormal varweight run P 52 直方图和分布的拟合检验UNIVARIATE过程 变量分布的图形描述 PROCUNIVARIATEDATA 数据集名noprint VAR变量名列 HISTOGRAM变量名列 midpoints 中点列normal mu 均值sigma 标准差图象选项 exp theta 阈值图象选项 lognormal theta 阈值图象选项 INSET统计量关键名 显示名 格式 QQPLOT变量名列 square PROBPLOT变量名列 BY变量名列 ID变量名 RUN 53 直方图和分布的拟合检验UNIVARITE过程 例子 procunivariatedata sasuser fitness varoxygen idage run procunivariatedata sasuser fitness varoxygen histogram procunivariatedata sasuser fitnessnoprint histogramoxygen title Histogram run Bstat41 sas 54 procunivariatedata sasuser fitnessnoprint histogramoxygen midpoints 32to60by4normal L 2color orangew 4 insetnmean 4 1 std 4 2 run procunivariatedata sasuser fitnessnoprint histogramoxygen midpoints 32to60by4normal L 1w 2 lognormal L 2w 3theta 30 exponential L 8w 4theta 30 run quit 55 直方图和分布的拟合检验练习题 1 打开FITNESS数据集 并用菜单系统或编程方法完成以下分析计算 计算变量OXYGEN和RUNTIME的均值 方差 标准差 偏度和峰度 指定GROUP为BY变量后 分别计算三组数据的以上几个描述统计量 2 在OXYGEN的直方图中如何拟合一条正态分布曲线 这条正态曲线的均值和方差是多少 怎样改变拟合曲线的均值和方差 56 直方图和分布的拟合检验练习题 3 对变量OXYGEN绘制经验分布函数曲线和QQ图 并检验该变量的分布是否为正态分布 0 05和 0 15 4 变量RUNTIME的标准差和极差是什么 这些值说明什么 5 绘制分类变量GROUP 测量水平指定为Nom 的条形图 并问属于组2的频数有多少 57 直方图和分布的拟合检验练习题 打开CLASS数据集 可类似完成题1中的练习 这里分类变量为SEX或AGE 数值变量为WEIGHT和HEIGHT 另要求 1 计算AGE的频数分布表 并要求输出按年龄由大到小的频数表 2 绘制AGE的条形图 并要求生成水平条形图 3 打开SASUSER GPA数据集 该数据集收集了224名学生的资料 考察的变量有7个 包括 GPA 中学生的平均等级 HSM 高中数学平均等级 58 直方图和分布的拟合检验练习题 HSE 高中英语平均等级 HSS 高中科学平均等级 STAM STA测验数学部分的得分 SATV STA测验口语部分的得分 SEX 学生的性别 试完成以下分析计算 1 作各变量的直方图 查看其分布情况并简答 2 研究GPA分数的分布 说明极端值情况 3 画出GPA的盒形图 并说明如何解释 通过直方图 盒形图 各统计量 分布检验结果简述GPA分布的特点 59 Gplot plot过程 procgplot选项列表 bubble散点图表达式bubble2散点图表达式plot散点图表达式plot2散点图表达式run 从gplot过程的一般格式中我们就可看出 此过程只能绘制两种类型的图形 bubble语句指示SAS绘制泡状散点图 plot语句指示SAS绘制点状散点图 bubble2语句和plot2语句指示SAS在同一区域内 bubble2和bubble在同一区域 plot2和plot在同一区域 绘制第二个图形 两者的横坐标相同 同一变量 纵坐标分别位于左右两侧 可以是同一变量 也可以是两个不同的变量 60 procgchart选项列表 图形关键词变量名称 选项列表run gchart过程的一般格式 gchart过程可以使用的图形关键字及其所绘制的图形类型 61 图形关键字后的变量名用以指定进行图形描述时的分组变量 可以是数值型的 此时以各组的组中值为分组的标志 也可以是字符型的 其后的选项比较重要的有 1 type 统计量关键字 表示以图形对变量 sumvar所指定的变量 的哪一种统计量进行描述 比如频数 freq 均数 mean 总计 sum 频数百分比 pctn 等 2 subgroup 变量名 分组变量 指定要进行分组 各组段内再分组 的变量 3 sumvar 变量名 数值变量 指定要进行统计计算的变量 也就是 type 统计量关键字 选项中统计量的计算所依据的变量 62 procgplot选项列表 bubble散点图表达式bubble2散点图表达式plot散点图表达式plot2散点图表达式run gplot过程的一般格式 从gplot过程的一般格式中我们就可看出 此过程只能绘制两种类型的图形 bubble语句指示SAS绘制泡状散点图 plot语句指示SAS绘制点状散点图 bubble2语句和plot2语句指示SAS在同一区域内 bubble2和bubble在同一区域 plot2和plot在同一区域 绘制第二个图形 两者的横坐标相同 同一变量 纵坐标分别位于左右两侧 可以是同一变量 也可以是两个不同的变量 63 散点图表达式的一般形式为 1 bubble和bubble2语句 纵坐标变量名 横坐标变量名 泡尺寸变量名 变量值以泡的大小表示 三者均应为数值变量 2 plot和plot2语句 纵坐标变量名 横坐标变量名 此处等号及其后的部分可以省略 此时SAS以默认的散点类型绘制散点图 若等号后为n n为正整数 是散点类型的编号 SAS则以指定的编号对应的散点类型绘制散点图 若等号后为分类变量名 可为字符型或数值型 为数值型时作为离散型变量处理 每一个值将被当作一个类别 此变量的具体值 或与每个具体值对应的图形 将被作为散点用来绘制散点图 chart过程和plot过程的一般格式及各选项使用方法分别与gchart过程和gplot过程是基本相同的 不同之处仅在于后两者中涉及到有关三维和图形元素 颜色等 的语句和选项在前两者中是无效的 例如vbar3d语句在chart过程中无效 bubble语句在plot过程中无效 其余的语句和选项使用方法完全相同 所以在掌握了gchart过程和gplot过程后 chart过程和plot过程你会不学自通 64 1 GCHART过程 1 语法格式GCHART过程用于绘制直方图 饼形图 扇形图 三维直方图等表示变量分布的图形 其语法格式为 PROCGCHARTDATA RUN 65 GCHART过程可以使用的图形关键字及其所绘制的图形类型见表2 5 图形关键字后的变量名用以指定进行图形描述时的分组变量 可以是数值型的 此时以各组的组中值为分组的标志 也可以是字符型的 66 选项比较重要的有 TYPE 统计量关键字 表示以图形对变量 SUMVAR所指定的变量 的哪一种统计量进行描述 比如频数 FREQ 均数 MEAN 总计 SUM 频数百分比 PCTN 等 SUBGROUP 变量名 分组变量 指定要进行分组 各组段内再分组 的变量 SUMVAR 变量名 数值变量 指定要进行统计计算的变量 也就是 TYPE 统计量关键字 选项中统计量的计算所依据的变量 67 2 画条形图 直方图 使用VBAR关键字可以画条形图 例如 画出数据集Mylib sryzc中Income变量的条形图的代码如下 procgchartdata mylib sryzc vbarIncome run 结果如图所示 68 其中绘图用的变量用VBAR语句给出 如果把VBAR改成HBAR则条形方向变为横向 用GCHART绘制的条形图和在INSIGHT中绘制的直方图有所不同 它在横轴标的是区间的中点值 而在INSIGHT中横轴标的是区间的端点值 可以指定分组的变量 例如在每个区段内再分段 可以用如下代码 procgchartdata mylib sryzc vbarIncome subgroup R Id run 结果如图所示 69 3 画三维条形图使用BLOCK关键字可以画三维条形图 例如 画出数据集mylib sryzc中Income变量的三维条形图的代码如下 procgchartdata mylib sryzc blockIncome group R Id run 结果如图所示 70 4 画饼形图使用PIE关键字可以画饼形图 PIE3D关键字可以画三维饼形图 例如 画出数据集mylib sryzc中Income变量的三维饼形图的代码如下 procgchartdata mylib sryzc PIE3DIncome run 结果如图所示 71 2 使用GPLOT过程绘制散点图和连线图通常用散点图和连线图可以表示 一个变量随另一个变量的变化 变量之间的关系 数据值的分布 1 GPLOT过程的一般格式PROCGPLOTDATA PLOT SYMBOLn RUN 常用的选项见表2 6 72 表2 6PLOT语句的选项 73 SYMBOL语句用来控制表示点的符号和点间的连线 其中n是不同SYMBOL语句的序号 可以是1 99 缺省为1 选项见表2 7 表2 7SYMBOL语句的选项 74 2 散点图绘制家庭总收入对家庭总支出的散点图 代码如下 procgplotdata mylib sryzc plotIncome outgo run 结果显示了一个GRAPHICS窗口 绘出了以Income为纵轴 以Outgo为横轴的散点图 见图 75 可以在图中按第三个变量分组画出散点图 如图2 48右 代码如下 procgplotdata mylib sryzc plotIncome outgo r id symbol1color blackv star symbol2color bluev dot run 76 3 连线图为了绘制连线 只要在SYMBOL语句中指定i join 例如绘制家庭总收入对家庭编号的连线图 图2 49左 代码如下 procgplotdata mylib sryzc plotIncome id symboli joinv star run 77 也可以分地区绘制家庭总收入对家庭编号的连线图 图2 49右 代码如下 procgplotdata mylib sryzc plotIncome id r id symbol1color blacki joinv star symbol2color bluei joinv dot run 78 图形的调整与输出在图形中也可以用TITLE语句和FOOTNOTE语句给图形加标题和脚注 还可以在图形的标题 标签中使用TrueType字型的汉字 例如 goptionsftext 宋体 htitle 4cellshtext 3cells procgplotdata sasuser class title 试验SAS图形的汉字功能 symboli nonev square plotweight height labelweight 体重 height 身高 run 输出结果见图 其中GOPTIONS中的FTEXT选项指定图形中文本的字体 79 为了把GRAPH绘制的图形保存为兼容的图形文件 只要在显示某一页图形输出时 选 File Export 菜单 在出现的输入文件名的窗口选择适当的文件类型 如BMP WMF JPEG PS 等等 要打印GRAPH生成的图形 只要选 File Print 这样用Windows的打印驱动程序与SAS GRAPH的图形驱动配合来打印 另外 SAS GRAPH模块还提供了许多种打印机的独立的驱动程序 可以不依赖于Windows的打印驱动 具体请参考有关资料或帮助 80 例下表为长沙市某大学160名正常成年女子1999年体检资料中的血清甘油三酯的测量结果 mmol L 请对其进行统计描述 81 按要求我们来计算该指标的均数 中位数 标准差和若干个重要的百分位数以及四分位数 并以直方图来表现此资料的分布特征 先将数据转换成SAS数据集的格式 编程时直接引用就可以了 我们先来计算所要的描述性统计量 计量资料的描述性统计功能通常用Summary过程 Means过程和univariate过程来实现 tabulate过程也可以实现描述性统计功能 但它和以上三个过程来比就显得复杂了一些 其实tabulate过程的过人之处在于对含有较多分类变量的资料的汇总性分析 以后大家用到的时候会慢慢体会到这一点 这里我们分别以三个过程来完成对该例题的描述性统计分析将上表中的数据以文本文件的形式录入 文件名为case2 1 存入目录 D SAS Teach 下 82 1 以means过程进行分析 libnamea D SAS Teach dataa case2 1 infile D SAS Teach data2 1 txt inputx run procmeansnmeanmedianp1p5p95p99q1q3maxmin varx run 83 默认情况下 Means过程会给出频数 均数 标准差 最大值和最小值等 若默认情况满足需要 则ProcMeans后的所有选项 代表所要求计算的统计量 皆可省略 否则需一一写出 如以上程序 84 2 以summary过程进行分析 libnamea D SAS Teach dataa case2 1 infile D SAS Teach data2 1 txt inputx run procsummary varx outputout temp1mean mm

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论