zoukankan      html  css  js  c++  java
  • R-方差分析-ch9

    当包含的因子(名义型或解释型因子)是解释变量时,我们关注的重点通常会从预测(建立回归模型)转向组别差异的分析,这种分析法称作方差分析(ANOVA)。ANOVA在各种实验和准实验设计的分析中都有广泛应用。

    用一个或多个定量变量来拟合和预测另一个定量变量,需要建立回归模型;

    当分类变量作为解释变量时,通常不会关注预测,而是关注分类变量带来的不同组间的差异,这时用方差分析。

    1、专业术语

      例子:研究不同的治疗方案对焦虑症的治疗效果。

        治疗方案:认知行为疗法CBT,眼动脱敏再加工法EMDR;

        招募10个焦虑症患者;

        治疗结束后,每个患者填写一份状态特质焦虑问卷STAI,作为治疗效果评定。

      对应的专业术语:

      因子:治疗方案。因子分为组间因子和组内因子。组间因子是指每个样本只被分配到一个组别中,此例中要么CBT,要么EMDR。

      水平:CBT、EMDR。

      STAI是因变量,治疗方案是自变量。此例中,只有一个类别型变量(治疗方案)所以称为单因素方差分析。

    ANOVA包括:单因素组间方差分析、单因素组内方差分析

            双因素方差分析

            混合模型方差分析(同时存在组间因子和组内因子)

            多元方差分析(当因变量为多个时)

            当存在因子之外的混淆因素时,该混淆因素称为协变量,称为协方差分析(因子和协变量可以理解为分类自变量和连续性自变量)

    2、ANOVA模型拟合

    (1)aov()函数

    (2)表达式中各项的顺序(即:各因子的顺序)

    表达式中效应的顺序在两种情况下会造成影响:(a)因子不止一个,并且是非平衡设计;(b)存在协变量。出现任意一种情况时,等式右边的变量都与其他每个变量相关。此时,我们无法清晰地划分它们对因变量的影响。

    样本大小越不平衡,效应项的顺序对结果的影响越大。一般来说,越基础性的效应越需要放在表达式前面。具体来讲,首先是协变量,然后是主效应,接着是双因素的交互项,再接着是三因素的交互项,以此类推。对于主效应,越基础性的变量越应放在表达式前面,因此性别要放在处理方式之前。有一个基本的准则:若研究设计不是正交的(也就是说,因子和/或协变量相关),一定要谨慎设置效应的顺序。

    注意:car包中的Anova()函数提供了使用类型II或类型III方法的选项,而aov()函数使用的是类型I方法。
    3、单因素方差分析

    比较类别变量下的各组均值是否有显著性差异。

    利用aov()函数进行单因素方差分析;

    summary()函数用于显示方差分析结果

    (1)多重比较

      虽然单因素方差分析的F检验表明5种药物疗法的效果不同,但没告诉你哪种疗法不同,更好,利用多重比较来解决此问题。

    方法一:

    TukeyHSD()函数提供了对各组均值差异的成对检验,该函数的参数为方差分析的结果
    方法二:

    multcomp包中的glht()函数提供了多重均值比较更为全面的方法,既适用于线性模型,也适用于广义线性模型。其参数为方差分析的结果。

    (2)评估检验的假设条件

       进行单因素分析的假定:一是因变量服从正态分布;二是各组方差相等。所以要进行以下检验:

        正态性检验:使用Q-Q图

        方差齐性检验:Bartlett检验  bartlett.test()函数

               Fligner-Killeen检验 fligner.test()函数

               Brown-Forsythe检验 HH包中的hov()函数

        离群点检验:(因为离群点影响方差齐性检验结果的准确性)car包中的outlierTest()函数

    4、单因素协方差分析

    单因素协方差分析(ANCOVA)扩展了单因素方差分析(ANOVA),包含一个或多个定量的协变量。

    ANCOVA分析使用aov()函数;

    由于使用了协变量,你可能想要获取调整的组均值——即去除协变量效应后的组均值。可使用effects包中的effects()函数来计算调整的均值。

    multcomp包还可以用来检验用户自定义的均值假设,假如你对未用药条件与其他三种用药条件影响是否不同感兴趣。
      (1)评估检验的假设条件:

      正态性、同方差性、回归斜率相同。

      要对回归斜率的同质性进行检验。若协变量与因子的交互效应不显著,则支持了斜率相等的假设。

      (2)结果可视化

        使用HH包中的ancova()函数

    5、双因素方差分析

      方法同单因素方差分析,多重比较和假设检验也同上

      对于可视化结果,作者更推荐HH包中的interaction2wt()函数,因为它能展示任意复杂度设计(双因素方差分析、三因素方差分析等)的主效应(箱线图)和交互效应。会展示任意顺序的因子设计的主效应和交互效应。

    6、重复测量方差分析

    所谓重复测量方差分析,即受试者被测量不止一次。本节重点关注含一个组内和一个组间因子的重复测量方差分析(这是一个常见的设计)。
    未读

    7、多元方差分析

    当因变量(结果变量)不止一个时,可用多元方差分析(MANOVA)对它们同时进行分析。

    使用manova()函数

      (1)评估假设检验

    单因素多元方差分析有两个前提假设,一个是多元正态性,一个是方差—协方差矩阵同质性。

      (2)稳健多元方差分析

    如果多元正态性或者方差—协方差均值假设都不满足,又或者你担心多元离群点,那么可以考虑用稳健或非参数版本的MANOVA检验。稳健单因素MANOVA可通过rrcov包中的Wilks.test()函数实现。vegan包中的adonis()函数则提供了非参数MANOVA的等同形式。

    8、用回归做ANOVA










  • 相关阅读:
    Velocity的使用小记
    fastJson的SerializeFilter使用
    快捷的时间转化
    How to execute a Stored Procedure with Entity Framework Code First
    自定义 ASP.NET Identity Data Model with EF
    Asp.Net Core get client IP
    HTTP 请求头中的 X-Forwarded-For
    HttpRequest,WebRequest,HttpWebRequest,WebClient,HttpClient 之间的区别
    【逻辑】500桶酒,找毒酒
    Asp.Net Core 输出 Word
  • 原文地址:https://www.cnblogs.com/yaofang/p/5570396.html
Copyright © 2011-2022 走看看