方差分析

------------------方差分析---------------

方差分析的用途

  • 用于多个(或两个)样本均数的比较;

  • 用于分析因素间的交互作用;

  • 用于方差齐性检验;

  • 用于方程的拟合度检验。

方差分析的类型

  • 单因素:完全随机设计

  • 两因素:随机区组设计

  • 多因素:析因、拉丁方、正交设计

  • 重复测量设计

    • 单组
    • 多组
  • 协方差分析(与方差分析并列)

方差分析的SAS程序

  • Proc glm<选项>;

  • Class 分组变量

  • Model 分析变量=分组变量

  • Lsmeans 分组变量

    • adjust=该选项指定两两比较的方法,常选Bon、Dunnett、Scheffe、Tukey等。tdiff= pdiff= slice(给出P值)
  • Means 分组变量

    • hovtest=(常选bartlett和levene) bon tukey snk dunnett等、

随机区组设计资料(配伍组、双因素)

proc glm data=aa;
class block dose;
model f = a b;
lsmeans block dose /tdiff adjust=bon;
run;

析因设计的方差分析(一种多因素的交叉分组设计)

proc glm;
class a b;
model x=a b a*b;
lsmeans a*b/slice=a;/控制b,看a的效应/
lsmeans a*b/slice=b;
lsmeans a*b/tdiff adjust=bon;
run;

------------------协方差分析---------------

  • Proc glm <选项>;

  • Class 分类变量;

  • Model 因变量=自变量;

  • Lsmeans 分类变量

  • adjust= 该选项指定两两比较的方法,常选的有Bon,Dunnett,Scheffe,Tukey等。其中bon,Scheffe,Tukey分别执行Bonferroni、Scheffe、Tukey两两比较法;Dunnett执行对照组与其余各试验组的比较,各试验组之间不做比较。Dunnett默认以赋值最小的一类作为对照组
    tdiff 给出两两比较的t值及P
    pdiff 给出两两比较的P
PROC GLM;                  
class group;
MODEL wt1=group wt0;
Lsmeans group/tdiff pdiff adjust=bon;
RUN

-----------------------------重复测量方差设计-------------------------------

概念

  • 是指同一观察对象的某观察指标在不同时间点上进行多次观察,有时是从同一个体的不同部位(或组织)上重复测量获得的指标的观测值。

资料特点

  • 重复测量值之间是非独立的,后一次测量的数据可能受前一次测量结果的影响
  • 观察指标在所测量的时间范围内可能成趋势性变化
  • 观察值的变异来源较多,变异可能与时间有关,或其他协变量有关。

重复测量方差设计的SAS实现

  • proc glm <选项>;

  • class 分组变量;

  • model 分析变量=分组变量;

  • repeated 重复测量变量名 <测量水平> <转换项> /<选项>;

    • 后必须指定重复测量变量名,测量水平可选,转换项也是可选的

      • <例> repeated time 4; 表示指定重复测量变量名为time,测量水平(即重复次数)为4次,中间均以空格隔开。其中time由读者自行命名,也可为其它名称

      • <转换项> 主要用于各次测量之间的比较,常用的有两种转换方式:contrast和polynomial

        • ​ contrast表示指定一个参照水平,其它均与参照水平比较,如 contrast(1);
        • polynomial表示正交多项式对比,即正交转换后判断曲线的n阶水平是否有统计学意义,
          • 如:repeated time 4 polynomial; 表示4次重复测量,分别对一次、二次和三次曲线分析是否有统计学意义,也就是判断测量值随时间变化大致呈何种趋势。
      • printe 该选项可输出一些相关矩阵(不是我们所关心的),更重要的是给出球性检验结果。
        summary 输出重复测量各水平间的比较结果。如果没有该选项,即使前面指定了contrast或polynomial,也不会显示比较结果
data example1;
input vas1-vas3;
cards;
………………
;
proc glm;
model vas1-vas3=/nouni; ;/*model语句指定3个因变量,即vas1-vas3,自变量不指定,nouni表示不输出单变量分析结果,因为对于重复测量分析,单变量分析意义不大*/
repeated time 3 contrast(1)/printe summary; /*repeated语句指定有3个时间点,contrast(1)表示后2个时间点分别与第1时间点比较,printe输出球性检验,summary输出后2个时间点分别与第1时间点比较的结果。summary输出重复测量各水平间的比较结果。如果没有该选项,即使前面指定了contrast或polynomial,也不会显示比较结果*/
run;

  • 结果输出部分

    • 首先看球性检验(Sphericity tests)结果,一般以正交成分(Orthogonal Components)的结果作为判断标准,不满足球性假定(P<0.05),后面的分析应以校正结果或多变量方差分析结果为准,符合的话以与校正同一行但靠前的那个p值为准。
    • 多变量方差分析结果(MANOVA test),其无效假设的H0是无时间效应
    • 单变量结果,当epsilon小于0.75时可采用G-G校正,当大于0.75时可采用H-F校正
  • 如果我们想进一步了解存在什么样的趋势,可以通过在repeated语句中指定polynomial来实现

    • 其输出的结果time1、time2所 H0 对应的意义为不符合一次曲线和二次曲线,当都满足时以高阶的为主
  • 多组的重复测量方差分析的SAS程序

data example2;
input g adc1-adc4;
cards;
0	1.86	1.82	1.83	1.86
0	1.94	1.77	1.88	1.73
……………………
1	1.13	1.21	1.24	1.25
1	0.91	1.05	1.19	1.16
;
proc glm;
class g;
model adc1-adc4=g/nouni; /g为分组变量/
repeated time 4 (0 3 7 42) polynomial/printe summary; /(0 3 7 42)为给定的时间间隔,如果并不给定则默认等间隔/ 
run;
posted @ 2020-06-17 23:09  小杨的冥想课  阅读(1296)  评论(0编辑  收藏  举报