R语言︱线性混合模型理论与案例探究(固定效应&随机效应)

您所在的位置:网站首页 混合效应线性回归 R语言︱线性混合模型理论与案例探究(固定效应&随机效应)

R语言︱线性混合模型理论与案例探究(固定效应&随机效应)

2023-11-04 09:49| 来源: 网络整理| 查看: 265

线性混合模型与普通的线性模型不同的地方是除了有固定效应外还有随机效应。

笔者认为一般统计模型中的横截面回归模型中大致可以分为两个方向:一个是交互效应方向(调节、中介效应)、一个是随机性方向(固定效应、随机效应)。

两个方向的选择需要根据业务需求:

交互效应较多探究的是变量之间的网络关系,可能会有很多变量,多变量之间的关系;

而随机性探究的是变量自身的关联,当需要着重顾及某变量存在太大的随机因素时(这样的变量就想是在寻在内生变量一样,比如点击量、不同人所在地区等)才会使用。具体见:

笔记︱横截面回归模型中的两大方向(交互效应+随机性)

___________________________________________________________________________________

一、线性混合模型理论

普通的线性回归只包含两项影响因素,即固定效应(fixed-effect)和噪声(noise)。噪声是我们模型中没有考虑的随机因素。而固定效应是那些可预测因素,而且能完整的划分总体。例如模型中的性别变量,我们清楚只有两种性别,而且理解这种变量的变化对结果的影响。

那么为什么需要 Mixed-effect Model?因为有些现实的复杂数据是普通线性回归是处理不了的。例如我们对一些人群进行重复测量,此时存在两种随机因素会影响模型,一种是对某个人重复测试而形成的随机噪声,另一种是因为人和人不同而形成的随机效应(random effect)。如果将一个人的测量数据看作一个组,随机因素就包括了组内随机因素(noise)和组间随机因素(random effect)。这种嵌套的随机因素结构违反了普通线性回归的假设条件。

你可能会把人员(组间的随机效应)看作是一种分类变量放到普通线性回归模型中,但这样作是得不偿失的。有可能这个factor的level很多,可能会用去很多自由度。更重要的是,这样作没什么意义。因为人员ID和性别不一样,我们不清楚它的意义,而且它也不能完整的划分总体。也就是说样本数据中的路人甲,路人乙不能完全代表总体的人员ID。因为它是随机的,我们并不关心它的作用,只是因为它会影响到模型,所以不得不考虑它。因此对于随机效应我们只估计其方差,不估计其回归系数。

混合模型中包括了固定效应和随机效应,而随机效应有两种方式来影响模型,一种是对截距影响,一种是对某个固定效应的斜率影响。前者称为 Random intercept model,后者称为 Random Intercept and Slope Model。Random intercept model的函数结构如下

Yij = a0 + a1*Xij + bi + eij

a0: 固定截距 a1: 固定斜率 b: 随机效应(只影响截距) X: 固定效应 e: 噪声

混合线性模型有时又称为多水平线性模型或层次结构线性模型由两个部分来决定,固定效应部分+随机效应部分.

(以上内容来源于数据挖掘入门与实战公众号)

1、模型简述

混合线性模型有时又称为多水平线性模型或层次结构线性模型由两个部分来决定,固定效应部分+随机效应部分。

2、协方差结构

来源于论文混合线性模型的应用(该论文涉及到两个案例),为了减少混合线性模型中方差协方差矩阵中参数的个数,统计学家提供了一些方差协方差矩阵(Y)的系统结构模式供实际工作应用。 常见的协方差结构有:

3、与普通线性回归模型以及广义线性模型的区别(参考经管之家论坛帖子)

(1)线性回归模型,适用于自变量X和因变量Y为线性关系,具体来说,画出散点图可以用一条直线来近似拟合。一般线性模型要求观测值之间相互独立、残差(因变量)服从正态分布、残差(因变量)方差齐性

(2)线性混合模型,在线性模型中加入随机效应项,消了观测值之间相互独立和残差(因变量)方差齐性的要求。

(3)广义线性模型,是为了克服线性回归模型的缺点出现的,是线性回归模型的推广。首先自变量可以是离散的,也可以是连续的。离散的可以是0-1变量,也可以是多种取值的变量。广义线性模型又取消了对残差(因变量)服从正态分布的要求。残差不一定要服从正态分布,可以服从二项、泊松、负二项、正态、伽马、逆高斯等分布,这些分布被统称为指数分布族。

关于分布:因变量的分布有放宽,但是自变量没有分布的要求

与线性回归模型相比较,有以下推广:

a、随机误差项不一定服从正态分布,可以服从二项、泊松、负二项、正态、伽马、逆高斯等分布,这些分布被统称为指数分布族。

b、引入联接函数$g(\cdot )$。因变量和自变量通过联接函数产生影响。根据不同的数据,可以自由选择不同的模型。大家比较熟悉的Logit模型就是使用Logit联接、随机误差项服从二项分布得到模型。

(4)与分层线性模型(HLM)的区别。

介于线性模型与分层线性模型之间,线性混合模型平行地以加入解释变量的形式加入了随机效应,分层线性模型是以系数项为二层回归引入了随机效应。分层线性模型较之线性混合模型更具随机性。

___________________________________________________________________________________

二、R语言中的线性混合模型

来自博客R中的线性混合模型介绍(翻译博客)(来自科学网邓飞博客)原来来自:http://www.r-bloggers.com/linear-mixed-models-in-r/

1、nlme lme4 Asreml包

R中有很多软件包可以做混合线性模型,这里我只介绍nlme、lme4和ASreml(对!ASreml是商业版,但是还有对应的R包),这些都是基于Reml的算法,当然还有一些包是基于贝叶斯的算法,这部分在其他章节介绍。

几个包的介绍:

优点

缺点

nlme

这是一个比较成熟的R包,是R语言安装时默认的包,它除了可以分析分层的线性混合模型,也可以处理非线性模型。在优势方面,个人认为它可以处理相对复杂的线性和非线性模型,可以定义方差协方差结构,可以在广义线性模型中定义几种分布函数和连接函数。

它的短板:1、随机效应的定义过于呆板2、数据量大时速度很慢3、默认情况下不能处理系谱数据4、不能处理多元数据。

lme4

lme4包是由Douglas Bates开发,他也是nlme包的作者之一,相对于nlme包而言,它的运行速度快一点,对于睡觉效应·随机效应的结构也可以更复杂一点,但是它的缺点也和nlme一样

1、不能处理协方差和相关系数结构2、它可以与构建系数的包连接,比如mmpedigree包,但是结合比较脆弱。

ASReml-R

ASReml-R是ASReml的R版本,它的优点:1、可以处理复杂的随机因子结构2、可以处理多元数据3、可以处理系谱数据4、可以处理大批量的数据

主要的缺点:1、它是收费的,当然它对于不发达国家的科研机构是免费的,不过需要申请和被审核。它的用户主要是育种公司、科研机构等,它可以在各种平台上运行,包括Windows、Linux、OS X等。

2、R语言案例

数据来源:一个传统的裂区数据来说明不同软件包的用法,这个数据oats是在MASS包中,是研究大麦品种和N肥处理的裂区试验,其中品种为主区,肥料为裂区。

library(MASS) data(oats) names(oats) = c('block', 'variety', 'nitrogen', 'yield')3、nlme包

用这个包很简单,y-变量写在左边,然后是固定因子,然后是随机因子,注意1|block/mainplot是裂区试验残差的写法,因为里面有两个残差。代码如下:

library(nlme) m1.nlme = lme(yield ~ variety*nitrogen, random = ~ 1|block/mainplot, data = oats) summary(m1.nlme)

方差分析结果为:

anova(m1.nlme) numDF denDF F-value p-value (Intercept) 1 45 245.14333


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3