前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >多个性状的BLUP计算综合育种值

多个性状的BLUP计算综合育种值

作者头像
邓飞
发布2022-07-27 19:44:33
1.1K0
发布2022-07-27 19:44:33
举报

大家好,我是飞哥。

最近有老师问如何计算多个育种值的综合育种值,因为选择育种时,需要考虑多个性状,而这些性状单位不一样,怎么合并计算?

这里面其实就是包括两部分内容:

1,多个性状的育种值进行标准化

2,多个性状的育种值赋予权重

为何要进行标准化?

所谓标准化,就是将数据变为平均数为0,方差为1的数据集。将所有性状都标准化,就意味着这些性状的尺度都是一样的,是一个总体,可以进行加减乘除的操作。然后可以对不同的性质设置不同的权重,才可以进行综合育种值的计算。

标准化就是将育种值减去平均育种值,然后除以标准差。公式如下:

为何要对不同性状赋予权重?

因为我们的选择时,不同的性状重要程度不同,我们可以对不同的性状赋予不同的权重,这个权重是我们自己设置的,要求是性状的权重绝对值之和为1。

下面我们用一组数据来介绍一下计算方法,首先模拟一个数据,包括ID,y1,y2,y3三个性状。

代码语言:javascript
复制
library(tidyverse)
# 模拟数据
set.seed(123)
dat = data.frame(ID = 1:100,y1=rnorm(100)+10, y2 = rnorm(100)+20, y3=rnorm(100))
head(dat)

第一种计算方法:tidyverse方法

基本逻辑是根据across,批量提取y开头的性状,然后进行标准化,最后使用mutate进行修改。最后将权重对应的性状相乘,相加变为综合育种值。

代码语言:javascript
复制
# 标准化
d1 = d1 %>% mutate(across(starts_with("y"),scale))
# 赋予权重
d1 = d1 %>% mutate(index = y1*0.3 + y2*0.3 + y3*0.4)
head(d1)

第二种方法:比较直观但是麻烦的方法

代码语言:javascript
复制
# 传统方法
d2 = dat
head(d2)

d2$y1 = (d2$y1-mean(d2$y1))/(sd(d2$y1))
d2$y2 = (d2$y2-mean(d2$y2))/(sd(d2$y2))
d2$y3 = (d2$y3-mean(d2$y3))/(sd(d2$y3))

d2$index = d2$y1*0.3 + d2$y2*0.3 + d2$y3*0.4
head(d2)

两者结果是一致的。

注意:

1,如果有些性状是负向选择,比如玉米含水量,猪的百公斤日龄,那就将权重设置为负数。

2,多性状选择时,尽量不要超过5个性状,否则就没有重点,效果也不佳。

3,权重的设置,来源于育种的经验数值,科学的确定权重的大小,需要考虑经济效益。

代码汇总:

代码语言:javascript
复制
library(tidyverse)

# 模拟数据
set.seed(123)
dat = data.frame(ID = 1:100,y1=rnorm(100)+10, y2 = rnorm(100)+20, y3=rnorm(100))
head(dat)
d1 = dat

# 标准化
d1 = d1 %>% mutate(across(starts_with("y"),scale))
# 赋予权重
d1 = d1 %>% mutate(index = y1*0.3 + y2*0.3 + y3*0.4)
head(d1)

# 传统方法
d2 = dat
head(d2)

d2$y1 = (d2$y1-mean(d2$y1))/(sd(d2$y1))
d2$y2 = (d2$y2-mean(d2$y2))/(sd(d2$y2))
d2$y3 = (d2$y3-mean(d2$y3))/(sd(d2$y3))

d2$index = d2$y1*0.3 + d2$y2*0.3 + d2$y3*0.4
head(d2)

head(d1)
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-05-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 育种数据分析之放飞自我 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档