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

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

时间:2024-08-06 09:26:50浏览次数:20  
标签:模型 回归 系统发育 效应 混合 嵌套 分层 数据 代码

回归分析是科学研究特别是生态学领域科学研究和数据分析十分重要的统计工具,可以回答众多科学问题,如环境因素对物种、种群、群落及生态系统或气候变化的影响;物种属性和系统发育对物种分布(多度)的影响等。纵观涉及数量统计方法生态学论文中几乎都能看到回归分析的身影。随着现代统计技术发展,回归分析方法得到了极大改进。混合效应模型(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)回归和混合效应模型分析结果进阶图:散点+提琴图、峰峦图、相关图、多图排版及输出等

图片

原文链接

标签:模型,回归,系统发育,效应,混合,嵌套,分层,数据,代码
From: https://blog.csdn.net/liuweijiana/article/details/140945143

相关文章

  • PHP中的引用传递和值传递的区别以及示例代码
    在PHP中,函数的参数传递主要有两种方式:值传递(PassbyValue)和引用传递(PassbyReference)。理解这两种传递方式对于编写高效、可维护的PHP代码至关重要。值传递(PassbyValue)值传递是PHP中的默认参数传递方式。当使用值传递时,函数内部对参数所做的任何修改都不会影响到函数外部......
  • UITableView的原理——探究及重新实现代码
    转自简书,原文地址,本文主要探讨一些特殊细节,像视图重用这类最基本的原理可在源码里查看。先前重新实现了一个list容器视图,由于Apple没有开源,在此分享过程中探索到的UITableView一些细节。MPTableView:AlistviewlikeUITableView,morefast,morefeatures.1·捉摸不定的con......
  • 2024河南省大学生电子设计竞赛A题:AC-AC变换电路并联运行(代码工程+原理图+PCB+设计报告
    1.电赛题目2.题目需求分析在题目中需要注意以下几个关键点:1.要求电路的拓扑结构为AC-AC直接变换电路,不得使用AC-DC-AC,-------- 应该是主要针对的背靠背电路。 AC-AC电路拓扑较少见,详细可以参照《AC-AC变换技术》-----陈道练。2.系统的供电也从AC36V输入获取......
  • 代码随想录二刷栈与队列
    代码随想录二刷栈与队列栈模拟队列具体思路如下:程序如下:classMyQueue:def__init__(self):self.stack_in=[]self.stack_out=[]defpush(self,x:int)->None:self.stack_in.append(x)defpop(self)->int:if......
  • Studying-代码随想录训练营day59| dijkstra(堆优化版)精讲、Bellman_ford 算法精讲
    第59天,dijkstra算法的优化版本,以及Bellman_ford算法......
  • 京喜小程序最佳实践:我是如何写超大型小程序代码的
    京喜小程序最佳实践:我是如何写超大型小程序代码的原创 罗文林 WecTeam  2020年04月02日11:45 你和一头骆驼准备穿过沙漠,前面是一眼望不到头的沙海,你的目的是要穿过沙漠到达对面的绿洲。现在你写的每一行代码就是往骆驼上负重。当然,有些负重是必须的,比如水和食物。可能......
  • 如何识别和避免魔鬼数字在代码中的不良影响
    如何识别和避免魔鬼数字在代码中的不良影响大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!今天我们来聊聊编程中的一个常见问题——魔鬼数字(MagicNumbers)。魔鬼数字是指那些在代码中直接使用的数值常量,它们没有任何解释或说明,导致代码的可读性和维护......
  • 高精度乘法、除法(含代码)
    昨天给大家讲了高精度加法和减法,今天就来给大家讲讲高精度乘法和除法。首先,我们一起来看看高精度乘法,高精度乘法的计算方式和我们平时算乘法的方式不太一样,它不是一位一位的乘,而是把乘数看作一个整体,因为高精度乘法一般是大数乘以小数(例题在活动-AcWing)或者小数乘以小数(例......
  • 低代码: 系统开发准备之确定一般开发流程,需求分析,复杂度分析,标准开发流程
    概述低代码系统开发之前,我们首先要进行一些准备我们首先知道我们软件开发的一般流程同时,我们还要知道,我们整个系统平台的需求如何之后,我们要基于需求进行设计,包含UI设计与系统架构设计一般开发流程系统开发一般要经过如下几个步骤,低代码系统平台也不例外我们来看下软件开......
  • Vs code写C语言代码配置(超级详细基础,小白也能看得懂)
    前言本文旨在为那些希望在VSCode中配置C语言开发环境的开发者提供一份详尽的指南。无论你是C语言的新手,还是希望提升开发效率的老手,本文都将引导你通过一系列简单的步骤,完成VSCode的C语言开发配置。我们将涵盖从安装VSCode开始,到配置编译器、调试器,以及安装必要的扩展,确保......