基于R语言进行AMMI分析2

接续上文【基于R语言进行AMMI分析1】

1、AMMI()函数的结果解读

# 加载agricolae包
library(agricolae)
# 加载数据
data(plrv)
# 查看数据
head(plrv)
model<-with(plrv,AMMI(Locality,Genotype,Rep,Yield,PC=TRUE))
# 查看方差分析结果
model$ANOVA
# 查看主成分的方差分析结果
model$analysis
# 查看基因型和环境的均值
model$means
# 查看双标图
model$biplot

(1)model$ANOVA:主效应和互作效应的方差分析

        结果显示:ENV(环境)间差异显著;GEN(品种)间差异显著;ENV:GEN(环境与品种互作)显著。

(2)model$analysis:环境与品种交互作用的主成分方差分析

        结果显示:环境与品种交互作用可分解为5个主成分,其中通过显著检验的主成分有3个(PC1、PC2、PC3),这三个主成分对交互作用总变异(交互作用平方和)的累计贡献率为92.7%,对数据具有很大的代表性。用于做AMMI2双标图的PC1和PC2的累计贡献率为83.3%,此双标图的反映的品种稳产性和环境辨别力结果的可信度较高。

【注:这里的PC1实际指的是IPCA1,依此类推】

(3)model$means:基因型和环境的均值

(4)model$biplot:用于制作双标图的数据

下图中可以看出:

        AMMI1双标图,plot(model,0,1):0对应Yield列,1对应PC1列。

        AMMI2双标图,plot(model,1,2):1对应的PC1列,2对应PC2列。

(5)示例1

data(CIC)
data1<-CIC$comas[,c(1,6,7,17,18)]
data2<-CIC$oxapampa[,c(1,6,7,19,20)]
head(data1)
head(data2)
cic<-rbind(data1,data2)
model<-with(cic,AMMI(Locality,Genotype,Rep,relative))
model$ANOVA

(6)示例2

# 加载agricolae包
library(agricolae)
# 加载数据集
data("sinRepAmmi")
# 展示数据集
head(sinRepAmmi)
# 设置重复数
REP<-3
# 设置MSE
MSerror<-93.24224
# AMMI模型分析
model<-with(sinRepAmmi,AMMI(ENV,GEN,REP,YLD,MSE=MSerror,PC=TRUE))
# 查看方差分析结果
print(model$ANOVA,na.print="")
# 查看AMMI1双标图
plot(model,0,1)
# 查看G×E交互作用的主成分分析结果
pc<-model$PC 
pc$loadings
summary(pc)
biplot(pc)

2、index.AMMI()函数

        index.AMMI()函数的使用方法为:index.AMMI(model),其中model为AMMI()函数的运算结果。

        index.AMMI()函数的输出结果为数据框,包括的指标如下:

①ASV:AMMI stability value

②YSI:Yield stability index

③rASV:Rank of AMMI stability value

④rYSI:Rank of yield stability index

⑤means:基因型的均值

计算公式可参考:

结果解释:

        ASV是衡量基因型(品种)稳定性的指标,其值越小,基因型(品种)的稳定性越好(【个人评价】此时对IPCA1和IPCA2对G×E交互作用的方差解释率有较高要求,解释率越高,ASV的评价就越准确);而YSI则是在稳定性评价(ASV从小到大排序的Rank值)的基础上增加了产量数据(means从大到小排序的Rank值)(【个人评价】YSI对品种丰产性和稳产性的评价过于简单,其结果不及GGE双标图)。而根据案例给出的计算结果rYSI实际是YSI计算公式中的RY。

# 加载agricolae包
library(agricolae)
# 加载数据集
data(plrv)
# 查看数据
head(plrv)
# AMMI分析
model<-with(plrv,AMMI(Locality,Genotype,Rep,Yield,console = FALSE))
# 产量稳定性分析
Idx<-index.AMMI(model)
# 查看稳定性分析指标
names(Idx)
# 查看稳定性分析结果
Idx

3、稳定性参数D值

        根据本人查看的文献,国内对品种稳定性的评价更多的是使用【基于AMMI模型的品种稳定性分析_张泽】的稳定性参数。解释如下:

        当统计检验显著的IPCA轴多于2个以上时,用一般的方法不可能做出像双标图那样直观的坐标图来分析,并且为了更全面、定量地反映GEI(基因型与环境互作)信息,需要计算出一个能度量稳定性的综合指标Di(j)。Di(j)就是在IPCA多维空间中品种(或试点)离原点的距离(即欧氏距离),计算公式如下:

D_{i}=\sqrt{\sum^{N}_{r=1}S^2_{ir}}

D_{j}=\sqrt{\sum^{N}_{r=1}S^2_{jr}}

其中,N为显著的IPCA个数,S^2_{i(j)r}为第i个基因型(或第j个试点)在r个IPCA上的得分。由于Di(j)实际上是在N个IPCA上得分的累加,因此Di值越小、则品种越稳定。对应地,Dj值越大、则表示试点对品种差异的判别力越强。(【个人评价】此方法对G×E互作的主成分进行更多的综合考虑,即所有统计显著的主成分都要求计算在内,主成分对G×E互作的方差解释率更高,评价也更准确)

# 加载agricolae包
library(agricolae)
# 加载数据集
data(plrv)
# 查看数据
head(plrv)
# AMMI分析
# 将console设置为TRUE,可以直接查看主成分分析结果
model<-with(plrv,AMMI(Locality,Genotype,Rep,Yield,console =TRUE))
# 由结果可知PC1、PC2、PC3结果显著
# 查看基因型和环境在各主成分上的得分
model$biplot
# 产量稳定性分析
df<-model$biplot
df<-df[,-c(6,7)]
df$D<-with(df,sqrt(PC1^2+PC2^2+PC3^2))
library(dplyr)
df<-df%>%group_by(type) %>%arrange(D) %>%mutate(rank_D=row_number())
# 结果展示
print(df,n=37)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/408565.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

minio 后端大文件分片上传,合并,删除分片

背景 网上大多数minio大文件上传都是采用后台返回前端预上传链接&#xff0c;然后由前端去put请求直接和minio通信上传分片文件&#xff0c;然后调用后台合并分片逻辑来达到快申诉上传的目的&#xff0c;详情可以参考我的上两篇文章 最近有个项目域名是https的&#xff0c;但…

详解华为项目管理,附华为高级项目管理内训材料

&#xff08;一&#xff09;华为在项目管理中通过有效的沟通、灵活的组织结构、坚持不懈的努力、细致的管理和科学的考核体系&#xff0c;实现了持续的创新和发展。通过引进先进的管理模式&#xff0c;强调以客户需求为导向&#xff0c;华为不仅优化了技术管理和项目研发流程&a…

单片机原理及技术(八)—— 串行口的工作原理及应用

目录 一、串行通信基础 1.1 并行通信与串行通信 1.1.1 并行通信 1.1.2 串行通信 1.2 同步通信与异步通信 1.3 串行通信的传输模式 二、串行口的结构 2.1 串行口控制寄存器SCON 2.1.1 SM0、SM1 2.1.2 SM2 2.1.3 REN 2.1.4 TB8 2.1.5 RB8 2.1.6 TI 2.1.7 RI 2.2 …

数据结构: 树状数组

在OI赛事中&#xff0c;数据结构是非常重要的一个内容&#xff0c;更是有人说过&#xff0c;算法数据结构程序: A l g o r i t h m D a t a AlgorithmData AlgorithmData S t r u c t u r e P r o g r a m m i n g StructureProgramming StructureProgramming 接下来&#…

如何在 Ubuntu 系统中安装PyCharm集成开发环境?

在上一篇文章中&#xff0c;我们探讨了Jupyter notebook&#xff0c;今天再来看看另一款常用的Python 工具&#xff0c;Pycharm。 PyCharm也是我们日常开发和学习常用的Python 集成开发环境 (IDE)&#xff0c;由 JetBrains 开发。 PyCharm 带有一整套可以帮助用户在使用Pytho…

docker映射了端口,宿主机不生效

1、问题产生原因 docker run -d --name my-redis -p 6379:6379 -v /usr/redis.conf:/usr/local/etc/redis/redis.conf team-redis:3.2 redis-server /usr/local/etc/redis/redis.conf 这容器跑起来了&#xff0c;端口6379没用。搞的我一直怀疑哪里出错了&#xff0c;查看配置…

【网络安全】服务基础第一阶段——第二节:网络测试与用户

一、Windows网络测试工具 CMD&#xff08;命令提示符&#xff09;中&#xff0c;ping和tracert是两个非常有用的网络诊断工具 1.1.ping命令 ping命令是Windows和其他操作系统中用于测试主机之间网络连接是否可达的基本命令行工具。它通过发送ICMP&#xff08;Internet Contr…

CSS中的元素布局与定位详细说明

1、前言 在CSS开发中&#xff0c;很重要的一个工作就是根据UI设计稿&#xff0c;进行元素的布局与定位&#xff0c;使得元素&#xff08;比如某一段文本、按钮、图片等&#xff09;显示在页面正确的位置。本文就元素的布局与定位方面&#xff0c;做一些讲解和说明。 2、元素的…

Markdown 美化 Github 个人主页

注&#xff1a;本文参考这篇博客 http://t.csdnimg.cn/KXhSw 目录 1 效果展示2 创建仓库3 编写 Markdown3.1 动态波浪图3.2 打字机动图3.3 技术栈图标3.4 项目贡献统计3.5 连续贡献统计3.6 贡献统计图3.7 代码时长统计3.8 仓库代码占比 1 效果展示 先来看看效果&#xff1a; 动…

OSPF路由配置--多区域

目录 不理解OSPF路由动态协议的可以回顾一下OSPF详解&#xff0c;下这一系列的实验都不再做解释,直接开始配置 一. 实验拓扑 二. 实验配置 (命令可以直接复制粘贴到CLI中) 三. 实验验证 不理解OSPF路由动态协议的可以回顾一下OSPF详解&#xff0c;下这一系列的实验都不…

C++ 设计模式——迭代器模式

迭代器模式 C 设计模式——迭代器模式1. 主要组成成分2. 迭代器模式范例2.1 抽象迭代器2.2 抽象容器2.3 具体的迭代器2.4 具体的容器2.5 主函数示例 3. 迭代器 UML 图3.1 迭代器 UML 图解析 4. 迭代器模式的优点5. 迭代器模式的缺点6. 迭代器模式的适用场景7. 现代C中的迭代器总…

【深度学习】使用Conda虚拟环境安装多个版本的CUDA和CUDNN方便切换

conda虚拟环境安装CUDA和CUDNN 官网教程 https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#conda-installation 1. 背景 深度学习用显卡训练的时候&#xff0c;需要安装与显卡对应的cuda和cudnn。但不同的项目所支持的pytorch版本是不一样的&#x…

Openssl Infinite Loop 漏洞(CVE-2022-0778)

Openssl Infinite Loop 漏洞&#xff08;CVE-2022-0778&#xff09; 1. 漏洞详情 在该漏洞中由于证书解析时使用的 BN_mod_sqrt() 函数存在一个错误&#xff0c;它会导致在非质数的情况下永远循环。可通过生成包含无效的显式曲线参数的证书来触发无限循环。由于证书解析是在验…

视频监控汇聚算法平台训练站车辆类型算法分析车辆类型检测应用方案

车辆类型检测算法是计算机视觉和深度学习技术在交通管理和智能车辆系统中的重要应用之一。这种算法通过自动分析和识别车辆图像&#xff0c;能够准确判断车辆的类型&#xff0c;如轿车、SUV、货车等。 运用方案 数据采集与预处理 采集包含车辆的图像或视频数据&#xff0c;包…

自学成才

软件只是一种工具&#xff0c;正如给你一张纸和一支笔&#xff0c;有人满纸疙瘩&#xff0c;有人行云流水唱成一曲绝唱&#xff0c;全在于笔头功夫。使用软件一样需要智慧&#xff0c;不光是懂了就行&#xff0c;还得创造性使用&#xff0c;才会成就别人望洋兴叹的绝活。 Core…

【实施】软件实施方案(word套用)

软件实施方案 二、 项目介绍 三、 项目实施 四、 项目实施计划 五、 人员培训 六、 项目验收 七、 售后服务 八、 项目保障措施 软件开发全套资料获取&#xff1a;&#xff08;本文末个人名片也可直接获取&#xff09; 软件产品&#xff0c;特别是行业解决方案软件产品不同于一…

【Electron】桌面应用开发electron-builder打包报错问题处理

Electron 桌面应用开发electron-builder打包过程中各种报错问题处理 前一篇有写过 Electron 桌面应用开发快速入门到打包Windows应用程序 在安装到打包的整个过程中&#xff0c;我们都会遇到很多诡异的问题&#xff0c;接下来我将介绍我遇到的几个问题的解决方案 一、拉包的时…

VBA技术资料MF191:将源文件夹所有文件移动到目标文件夹

我给VBA的定义&#xff1a;VBA是个人小型自动化处理的有效工具。利用好了&#xff0c;可以大大提高自己的工作效率&#xff0c;而且可以提高数据的准确度。“VBA语言専攻”提供的教程一共九套&#xff0c;分为初级、中级、高级三大部分&#xff0c;教程是对VBA的系统讲解&#…

iOS profiles文件过期如何更新

创建发布用的Certificates 首先进入到https://developer.apple.com/account页面选择【证书】进入【新建证书】页面 点击【新建证书】按钮&#xff1a; 根据需求选中对应的【证书类型】&#xff0c;我选的是【Apple Distribution】&#xff0c; 开发者证书选择【Apple Devel…

react antd TreeSelect实现自定义标签

<ProFormTreeSelectlabel"接收对象"name"receiverObjects"colProps{{ span: 16 }}labelCol{{span: 6,}}wrapperCol{{span: 18,}}rules{[{ required: true }]}fieldProps{{showSearch: true,multiple: true,// autoClearSearchValue: true,filterTreeNod…