基于R语言复杂数据回归与混合效应模型【多水平/分层/嵌套】技术与代码

回归分析是科学研究特别是生态学领域科学研究和数据分析十分重要的统计工具,可以回答众多科学问题,如环境因素对物种、种群、群落及生态系统或气候变化的影响;物种属性和系统发育对物种分布(多度)的影响等。纵观涉及数量统计方法生态学论文中几乎都能看到回归分析的身影。随着现代统计技术发展,回归分析方法得到了极大改进。混合效应模型(Mixed effect model),即多水平模型(Multilevel model)/分层模型(Hierarchical Model)/嵌套模型(Nested Model),无疑是现代回归分析中应用最为广泛的统计模型,代表了主流发展方向,它不仅可以涵盖方差分析和协方差分析,同时也可以分析非正态响应变量(如0,1数据和计数数据)、数据分层、嵌套、时间自相关、空间自相关、系统发育相关导致的数据不独立情况以及数据间的非线性关系。混合效应模型形式灵活可以应对现代科学研究中各种数据情况,与传统回归模型相比具有更为强大数据分析能力,且结果更为稳定,特别适合应对科学数据结构复杂性和异质性的特点。

本课包括复杂生态数据回归及混合效应模型概述;Rstudio和R入门、数据整理和绘图基础;回归与混合效应模型,包括一般线性回归(lm)、广义线性回归(glm);线性混合效应模型(lmm)及广义线性混合效应模型(glmm);相关数据回归与混合效应模型包括时间自相关数据,空间自相数据及系统发育数据分析;非线性数据回归分析包括广义可加(混合)模型和非线性(混合)模型;回归与混合效应模型结果绘图。将通过大量实例,使大家能应对科研工作中复杂生态数据局面,选择合适模型,提高数据分析能力。

第一单元:复杂生态数据回归/混合效应模型概述

1)生态学领域数据多样性和复杂性

2)回归分析历史、理论基础

3)回归和混合效应模型基本假设和常见问题

4)如何根据复杂生态数据选择合适的回归/混合效应模型形式

第二单元:R和Rstudio入门、数据整理及绘图基础

2.1 Rstudio及R语言入门

1)R及Rstudio介绍:背景、软件及程序包安装、基本设置等

2)R语言基本操作,包括向量、矩阵、数据框及数据列表等生成和数据提取等

3)R语言数据文件读取、结果存储等

2.2 R语言数据整理及绘图基础

1)tidyvese简介:tidyr、dplyr、readr、%>%等

2)数据筛选、数据合并、数据拆分、新数据生成等

3)长宽数据转换、空值(NA)等填充及删除、分组、排序及汇总等

4)基本绘图、排版、发表质量绘图输出存储(含ggplot)

第三单元:回归与混合效应(多水平/层次/嵌套)模型

3.1 一般线性模型(lm)

1)基本形式、基本假设、估计方法、参数检验(t检验和F检验)、模型检验

2)一般线性回归、方差分析及协方差分析

3)一般线性回归模型验证:模型可加性、方差齐次性、残差正态性

4)一般线性回归模型选择-逐步回归

3.2 广义线性模型(glm)

1) 基本形式、基本假设、估计方法、参数检验、模型检验

2) 0,1数据分析:伯努利分布、二项分布及其过度离散问题

3)计数数据各种情况及模型选择:泊松、负二项、过度离散、零膨胀、零截断

4) 广义线性模型的模型比较和选择-似然比LR和AIC

第四单元:相关数据回归分析:时间、空间、系统发育相关

4.1重复测量/时间自相关数据分析

1)回归模型的方差异质性问题及解决途径

2)时间自相关分析:线性及混合效应模型

3)时间自相关+方差异质性分析

4.2 空间相关数据分析

1)空间自相关概述

2)空间自相关问题解决方式

3)空间自相关问题修正基本流程-gls和lme

4.3系统发育相关数据分析

1)系统发育简介:系统发育假说、系统发育信号及系统发育树

2)系统发育树及系统发育距离矩阵构建

3)系统发育信息纳入回归模型-系统发育相关(pgls)vs 广义最小二乘(gls)

4)系统发育信息纳入混合效应模型(lmm/glmm)实现案例

第五单元:非线性关系数据分析:广义可加(混合)模型和非线性(混合)模型

1)"线性"回归的含义及非线性关系的判定

2)广义可加(混合效应)(GAM/GAMM)模型

3)非线性(混合效应)(NLM/NLMM)模型

第六单元:回归及混合效应模型结果绘图

1)回归及混合模型分析结果数据提取和绘图准备

2)回归和混合效应模型分析结果基础图:散点图、箱线图、柱状图、预测图

3)回归和混合效应模型分析结果进阶图:散点+提琴图、峰峦图、相关图、多图排版及输出等

原文链接

相关推荐
神奇夜光杯7 分钟前
Python酷库之旅-第三方库Pandas(202)
开发语言·人工智能·python·excel·pandas·标准库及第三方库·学习与成长
Themberfue9 分钟前
Java多线程详解⑤(全程干货!!!)线程安全问题 || 锁 || synchronized
java·开发语言·线程·多线程·synchronized·
plmm烟酒僧11 分钟前
Windows下QT调用MinGW编译的OpenCV
开发语言·windows·qt·opencv
测试界的酸菜鱼23 分钟前
Python 大数据展示屏实例
大数据·开发语言·python
让学习成为一种生活方式26 分钟前
R包下载太慢安装中止的解决策略-R语言003
java·数据库·r语言
晨曦_子画32 分钟前
编程语言之战:AI 之后的 Kotlin 与 Java
android·java·开发语言·人工智能·kotlin
Black_Friend40 分钟前
关于在VS中使用Qt不同版本报错的问题
开发语言·qt
希言JY1 小时前
C字符串 | 字符串处理函数 | 使用 | 原理 | 实现
c语言·开发语言
残月只会敲键盘1 小时前
php代码审计--常见函数整理
开发语言·php
xianwu5431 小时前
反向代理模块
linux·开发语言·网络·git