3.QTL定位:Rqtl —— Multiple-QTL analyses

在进行单QTL和双QTL基因组扫描后,最好将确定的位点合并成一个联合模型,然后进一步探讨QTL的可能性。

在此工作中,我们使用由makeqtl()创建的QTL对象,利用fitqtl()拟合多qtl模型。

流程如下:

  • 1.首先进行单qtl基因组扫描,选择LOD评分最高的位置;
  • 2.固定QTL模型:
    a.加性QTL扫描;
    b.对于当前模型中的每个QTL,扫描另一个相互作用的QTL;
    c.如果当前模型中有2个QTL,考虑添加其中一个可能的成对交互作用;
    d.进行二维双QTL扫描,添加一对新的QTL,加性或相互作用;
    e.在当前步骤中考虑的模型比较标准中,选出具有最大值的模型。
  • 优化当前模型中QTL的位置;
  • 重复步骤2和步骤3,得到具有预定数量位点的模型;
  • 最后,在所有模型中,选择模型比较标准最大的模型。

0.准备工作

> library(qtl)
> data <- read.cross("csv", ".", "gen_phe.csv")
> jit<-jittermap(data)
> calc <- calc.genoprob(jit, step=2)

1.创建QTL对象

将但QTL扫描和二维双QTL扫描得到的QTL整理成一个联合模型;

根据单QTL扫描的结果,共有2个QTL,二维双QTL扫描得到chr11和chr13之间存在互作:

> chr <- c(6, 8, 11,13)
> pos <- c(86.77,40.52,96, 54)

2.模型拟合

> qtl <- makeqtl(calc, chr, pos)
Error in makeqtl(calc, chr, pos) : You must first run sim.geno.

报错:You must first run sim.geno.
该函数取一个交叉对象和指定的染色体数目和位置,并在最近的伪标记处提取基因型概率或估算基因型

> sim <- sim.geno(calc, step=2, err=0.001)

重新拟合,允许Q3和Q4之间存在互作:

> qtl <- makeqtl(sim, chr, pos)
> my.formula <- y ~ Q1 + Q2 + Q3 + Q4 + Q3:Q4
> out.fitqtl <- fitqtl(sim, qtl=qtl, formula=my.formula)

总结

> summary(out.fitqtl)

%var一列就是QTL的表型解释率了。


引用转载请注明出处,如有错误敬请指出。

你可能感兴趣的:(3.QTL定位:Rqtl —— Multiple-QTL analyses)