统计实验与SAS上机简易过程步

更新时间:2024-03-06 15:15:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

数据统计分析一般可遵循以下思路:

(1)先确定研究目的,根据研究目的选择方法。不同研究目的采用的统计方法不同,常见的研究目的主要有三类:①差异性研究,即比较组间均数、率等的差异,可用的方法有t检验、方差分析、χ2检验、非参数检验等。②相关性分析,即分析两个或多个变量之间的关系,可用的方法有相关分析。③影响性分析,即分析某一结局发生的影响因素,可用的方法有线性回归、logistic回归、Cox回归等。

(2)明确数据类型,根据数据类型进一步确定方法:①定量资料可用的方法有t检验、方差分析、非参数检验、线性相关、线性回归等。②分类资料可用的方法有χ2检验、对数线性模型、logistic回归等。下图简要列出了不同研究目的、

不同数据类型常用的统计分析方法。

(3)选定统计方法后,需要利用统计软件具体实现统计分析过程。SAS中,不同的统计方法对应不同的命令,只要方法选定,便可通过对应的命令辅之以相应的选项实现统计结果的输出。

(4)统计结果的输出并非数据分析的完成。一般统计软件都会输出很多结果,需要从中选择自己需要的部分,并做出统计学结论。但统计学结论不同于专业结论,最终还需要结合实际做出合理的专业结论。 第一部分:统计描述

1 / 12

1. 定量资料的统计描述指标及SAS实现; (1)数据分布检验:PROC UNIVARIATE

①基本格式:

②语句格式示例:

1. PROC UNIVARIATE normal;/*normal选项表示进行正态性检验*/ 2. CLASS group;/*指定group为分组变量*/ 3. VAR weight;/*指定分析变量为weight*/ 4. RUN;

③结果:正态性检验(tests for normality)结果,常用的是Shapiro-Wilk 检验和Kolmogorov-Smirnov检验。当例数小于2000时,采用Shapiro-Wilk检验W值为标准;当例数大于2000时,SAS中不显示Shapiro-Wilk检验结果,采用Kolmogorov-Smirnov检验D值为判断标准。正态性检验的P≤0.05提示不服从正态分布,P>0.05提示服从正态分布。

注:若服从正态分布,进行PROC MEANS过程步;若不服从则计算百分位数, 转(3)

(2)数据描述(符合正态分布的数据):PROC MEANS

①基本格式:

关键字(可以无视):不写任何关键字时默认输出n,mean,std,max,min; n:有效数据记录数(有效样本量) median:中位数

mean:均数 qrange:四分位数间距 std:标准差 var:方差

clm:95%可信区间 max、min:最大、最小值 ②语句格式示例:

1. PROC MEANS n mean std median qrange clm;/*关调用proc means过程,

要求输出的指标有例数、均值、标准差、中位数、四分位数间距、95%可信区间*/

2. CLASS group;/*指定group为分组变量*/ 3. VAR weight;/*指定分析变量为weight*/ 4. Run;

③结果以“均数±标准差”表示 (3)偏正态分布的统计描述:

①基本思想:计算中位数和百分位数,并且用“中位数(Q1~Q3)”表示 ②语句格式示例:

1. proc univariate data=aa; 2. var x;

3. output out=c pctlpre=P pctlpts=0 to 100 by 2.5;/*计算0到100

百分位数,间隔2.5个百分位数,并将结果输出在数据集“aa”中*/

2 / 12

4. run;

5. proc transpose data=c out=d; 6. proc print data=d;

7. run;/*以上是求解百分位数语句*/ 1. proc univariate data=aa

2. CIPCTLDF(alpha=0.05);/* 求百分位数的95%可信区间,(alpha=0.05)

此处可缺省;若需求可信区间,只需指定相应的alpha水平*/ 3. var x; 4. run;

③结果:a.偏态分布的统计描述以“中位数(Q1~Q3)”表示 b.总体参数的95%可信区间

2. 分类(定性)资料的统计描述指标及SAS实现 (1)输出频数表:PROC FREQ

①基本格式:

②语句格式示例: 1. PROC FREQ;

2. TABLE group * weight;/*table后有group和grade两个变量,交叉形

成一个行X列的表格,若group为2类,grade为3类,因此形成2X3=6个格子,每一格子中给出例数和相应比例*/ 3. RUN;

(2)直方图的绘制

①基本语句:histogram 变量x ②语句格式示例:

1. proc univariate; 2. var x;

3. histogram x/midpoints=163 to 183 by 2; /*要求Univariate过程绘

制的直方图中各直条的组中值为163、165、??183(自行改动)*/ 4. run;

(3)计算基本统计量和95%可信区间:PROC UNIVARIATE

①基本要求:计算定性资料的95%可信区间 ②语句格式示例:

1. proc univariate cibasic; /*基本统计量及其可信区间,对应于

CIBASIC选项*/ 2. var x; 3. run;

③结果:此步骤结果只需观察SAS结果中的“基本置信限正态假设”一栏,其他可无视。

3 / 12

第二部分:定量资料的统计分析 1.单一样本均数的检验 (1)直接公式编辑

①适用条件:没有原始数据,而只知道样本均数及已知总体的总体均数时 ②方法示例:某医生测量了36名从事某作业的男性工人的血红蛋白含量,其均值为130.83g/L,标准差为25.74g/L。问从事该作业男性工人的血红蛋白含量是否不同于正常成年男性的均值140g/L

③SAS过程步: 1. data aa; 2. n=36;

3. sm=130.83;/*样本均数*/ 4. std=25.74; /*样本标准差*/ 5. pm=140; /*总体均数*/ 6. df=n-1; /*自由度*/

7. t=(sm-pm)/(std/sqrt(n)); /*单样本t 检验的计算公式*/

8. p=(1-probt(abs(t),df))*2;/* ①abs(x)函数:返回x的绝对值。②

probt(x,df)函数:是student t分布的概率分布函数,用于计算自由度为df的t分布在t取x值时的概率。因为是做双侧检验,所以求得一侧的概率值后再乘以2*/ 9. proc print; 10.var t p; 11.run;

③结果使用t和p值

(2)利用MEANS或UNIVARIATE过程计算

①已知样本资料的原始数据,单样本t 检验可以利用MEANS过程和UNIVARIATE过程实现

②语句格式示例:

1. proc means mean std t ptr;

2. var y;/*y值为每一个观测值与已知总体均数的差值*/ 3. run;

或者

1. proc univariate;

2. var y;/*y值为每一个观测值与已知总体均数的差值*/ 3. run;

③方法类似于统计描述,结果指标为t和p值 2.完全随机两组正态分布资料的比较

①分析思路:两组比较属于差异性研究,再看是否正太,可考虑方法有独立样本的t检验或Wilcoxon秩和检验,具体还应进一步看资料的分布情况。

②正态性检验:

1. proc univariate normal; 2. class group; var x; 3. run;

若为正态性则可使用t检验,否则使用Wilcoxon秩和检验(见后文) ③t检验语句:

4 / 12

1. proc ttest 2. class group; 3. var x; 4. run;

④结果:观察t值和p值,给出结论 3.完全随机两组非正态分布资料的比较

①思路同上2,首先进行正态性检验;语句略 ②非正态分布时两组之间的秩和检验语句:

1. proc npar1way Wilcoxon;/*wilcoxon选项给出wilcoxon和

Kruskal-Wallis检验值*/ 2. class group; 3. var x; 4. run;

③秩和检验观察Z值和P值,得出结论 4.完全随机多组正态分布资料的比较

①前提是研究为完全随机设计,需要分析两组数据的变化值,因此可以考虑方差分析或Kruskal-Wallis秩和检验,具体还应进一步看资料是否符合正态分布;

②正态性检验确定具体分析方法,若为正态,使用方差分析,否则为Kruskal-Wallis秩和检验(非参数检验,见后文):正态性检验过程步略···

③方差分析:只有glm过程,anova过程请参考课件 1. proc glm; 2. class group; 3. model x=group;

4. means group/hovtest lsd;/*使用lsd法进行两两比较并给出p值*/ 5. run;

④根据两组之间p值是否有意义给出结论 5.完全随机多组非正态分布资料的比较

①同上思路,首先正态检验,不符合时候,使用多组之间的Kruskal-Wallis秩和检验;

首先进行秩和检验:

1. proc npar1way Wilcoxon;/*wilcoxon选项给出wilcoxon和

Kruskal-Wallis检验值*/ 2. class group; 3. var x; 4. run;

②多组非正态分布资料两两之间的比较的过程步:(原理:对研究变量的秩进行排序,用方差分析对秩次进行两两比较);

1. proc rank data=ex12_5 out=rank5; 2. var x; 3. run;

4. proc print data=ranks; 5. run;

6. proc glm data=ranks;

5 / 12

本文来源:https://www.bwwdw.com/article/njaa.html

Top