美文网首页
R/qtl 定位分析(三)Single-QTL analysis

R/qtl 定位分析(三)Single-QTL analysis

作者: 风知秋 | 来源:发表于2023-03-07 20:27 被阅读0次

上一部分介绍了数据导入部分,有需要的可以移步:

SNPbinner 构建定位群体的基因组 bin 图谱

R/qtl 定位分析(一)读取数据

R/qtl 定位分析(二)Data Check

接下来就进入 QTL 分析的部分了。


在 QTL 分析中,最常使用的是 interval mapping 的方法。不过在介绍 interval mapping 之前,先介绍一种简单的方法,以更好地了解 QTL 分析的原理。

1. Marker regression

简单来说,就是单独地考虑每个标记,根据标记处的基因型将个体分组,并比较各组之间表型的差异。虽然这种方法不常用,但提供了一个思考并描述 QTL mapping 中基本问题的框架。

具体来说,回交群体内通过 t 检验来判断标记和 QTL 的关联,而杂交群体内则是则是通过 ANOVA 给出的 F 值。

衡量 QTL 存在可能性的值为 LOD,该指标的含义为该位点存在 QTL 的可能性比上不存在 QTL 的常用对数。举例来说:如果 LOD 值为 2 则表示该位点含 QLT 的概率是不含 QTL 概率的 100 倍。

该方法最大的优势就是简单,只需要对每个标记执行 t 检验或者 ANOVA。但是,一个关键的缺点就是必须忽略标记缺失的个体;此外不能检查标记之间的位置,而且关于 QTL 位置的信息很少;而且 QTL 的效应会由于其于标记的不完全连锁而减弱。

另外,标记回归最重要的缺点是仅考虑单个 QTL 的存在,会造成分离连锁 QTL 的能力有限,也无法评估 QTL 之间可能的相互作用。不过在单个 QTL 分析中的其它方法(包括区间作图)也都有这个缺点,这个后面再说。

2. Interval mapping

Interval mapping 可以细分为几种方法,区别在于对于缺失标记的处理上有所不同。

Standard interval mapping 是在混合模型下进行最大似然估计;Haley–Knott regression methods 是对混合模型使用近似;The multiple imputation method 同样使用混合模型,但使用了 multiple imputation 代替最大似然。

接下来就是计算了。

# R/qtl 分析要求标记位置不能完全一样,所以需要使用 jittermap 将标记进行轻微移动。

hyper <- jittermap(hyper)

#  calc.genoprob 会计算基因型概率,填充到标记之间, step 设置步长,单位是 cM,步长确定了后期 QTL 定位的密度。

hyper <- calc.genoprob(hyper, step=1, error.prob=0.001)

# 通过 scanone 进行 QTL 扫描,默认方法为 EM algorithm;可以通过 method 选项修改为 Haley–Knott regression (hk) 或  Extended Haley–Knott regression (ehk)。

out.em <- scanone(hyper)

out.hk <- scanone(hyper, method="hk")

out.ehk <- scanone(hyper, method="ehk")

# 进行绘图展示

plot(out.em, ylab="LOD score")

可以将不同方法的结果绘制到一张图上进行比较:

plot(out.em, out.hk, out.ehk, chr=c(1,4,15), ylab="LOD score", lty=c(1,1,2))

如果使用 multiple imputation 方法,需要先使用 sim.geno 执行 imputations:

hyper <- sim.geno(hyper, step=1, n.draws=64, error.prob=0.001)

out.imp <- scanone(hyper, method="imp")

plot(out.em, out.imp, chr=c(1,4,15), col=c("blue", "red"), ylab="LOD score")

不同方法有着各自的优缺点,从对基因型数据的要求,到计算速度,如下表所示:

3. Significance thresholds

什么样的 LOD 值是合适的?R/qtl 提供了一种 permutation test,可以得到 LOD 值大小的显著性阈值

data(hyper)

hyper <- calc.genoprob(hyper, step=1, error.prob=0.001)

operm <- scanone(hyper, n.perm=1000, verbose=FALSE)

summary(operm, alpha=c(0.20, 0.05))

该检验可以和 scannone 一同使用,得到大于显著性阈值的标记信息:

summary(out.em, perms=operms, alpha=0.1, pvalues=TRUE)

4. Interval estimates of QTL location

目的很单纯,在发现染色体上存在 QTL 的证据后,就要确定其可能存在的区间范围(假设每条染色体上仅存在一个 QTL)。估计方法有两种:LOD support intervals 和 Bayes credible intervals。

如果 LOD 值下降后又回升,会得到一组不相交的区间,一般采取保守的方法取较宽的区间。

其中,回交群体内一般使用 1.5-LOD support intervals,而杂交群体则是 1.8-LOD support intervals。

两种方法估计的函数分别为 lodint 和 bayesint。计算 1.5-LOD support 和 95% Bayes credible intervals 为例:

lodint(out.em, 4, 1.5)

bayesint(out.em, 4, 0.95)

其中第一行为区间开始位置 ,第三行为区间结束位置,中间一行是QTL的预估位置。

5. QTL effects

QTL 的效应值是通过不同基因型组之间的表型差异计算得到的。

就以上面 4 号染色体上的位点为例进行计算:

effectplot(hyper, mname1="D4Mit164")

plotPXG(hyper, marker="D4Mit164")

eff <- effectplot(hyper, mname1="D4Mit164", draw=FALSE)

eff

这一块在 multiple-QTL 的地方会进一步讲,这里就是先了解一下。

6. Multiple phenotypes

在有多个表型的时候,可以通过 pheno.col 指定表型,比如:

out.logliver <- scanone(iron, pheno.col=3)

out.all <- scanone(iron, pheno.col=1:4)

其中,summary.scanone 默认展示的是第一列表型的结果,可以使用 lodcolum 进行指定,format="allpheno" 命令可以指定展示所有大于阈值的标记:

summary(out.all, threshold=3, lodcolumn=4)

summary(out.all, threshold=3, format="allpheno")

operm.all <- scanone(iron, pheno.col=1:4, n.perm=1000)

summary(out.all, format="allpeaks", perms=operm.all, alpha=0.05, pvalues=TRUE)

这一块大概就是这么多内容。

后面还会介绍


码字不易,如有转载,请标明来源。

另,欢迎评论区交流,有用的话点个赞也是极好的。

相关文章

  • 1.QTL定位:Rqtl—— Single-QTL analys

    R/qtl是一个可扩展的、交互的、用于QTL定位的R包,集数据分析和绘图于一体。特点是使复杂的QTL定位方法被广泛...

  • 2020-09-28

    功能基因定位的方法:QTL定位(包括GWAS)和群体遗传(选择压力分析) 广义的QTL包括连锁分析和关联分析。 首...

  • 使用R/qtl进行QTL分析

    欢迎关注微信公众号"生信小王子"! QTL分析是进行基因精细定位和克隆的基础,今天小编教大家使用R包" qtl "...

  • Matrix eQTL分析

    目前针对QTL分析有很多软件,比如Plink、 Merlin、R/qtl、FastMap等等,今天给大家分享一下如...

  • 2.QTL定位:Rqtl —— Two-QTL scans

    在上篇帖子中介绍了如何用qtl这个R包进行单QTL定位,但有很多复杂性状都是由多位点共同控制的。有些位点之间可能存...

  • 使用tassel和haploview进行GWAS

    在植物的QTL定位最后阶段,会把QTL定位到一个很小的区间,这里面可能有几个候选基因,如何进行下一步的分析是个很头...

  • R语言聚类分析最佳实践:书籍

    R语言聚类分析最佳实践 Practical Guide to Cluster Analysis in R 简介 尽...

  • QTL定位

    如果分子标记覆盖整个基因组,当标记与控制特定性状基因连锁时,不同标记基因型的表型值存在显著差异,通过数量性状观测值...

  • 方差分析ANOVA及多重比较

    方差分析(Analysis of Variance,简称ANOVA),又称“变异数分析”,是R.A.Fisher发...

  • 安装使用QTL-seqr

    QTL-seqr是一个R包。官方文件地址qtl-seqr参数详解安装流程在R环境里 目前版本号:QTLseqr v...

网友评论

      本文标题:R/qtl 定位分析(三)Single-QTL analysis

      本文链接:https://www.haomeiwen.com/subject/wfsgqdtx.html