本文主要是介绍GIF(genomic inflation factor)值的计算方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
GIF值通常用在GWA过程中,用来控制该过程质量;鉴别出那些低质量的基因标记;例如在统计学中,GIF值大于1.0表示结果有低质量数据的出现;
那么我们如何计算gwa中的GIF呢;在matlab中,我们使用qqplot()来生成QQplot图,但是这并不意味这我们能够很容易的计算并得到GIF值,我们生成QQplot以后才能从头计算GIF。
第一步就是,我们首先得到正态分布的期望顺序统计量;正态分布的第i次顺序统计量服从参数(i,n-i+1)的贝塔分布,期望值是:
这个是比较容易计算的。下面是个简单的MATLAB程序来显示GWA分析的QQplot并计算GIF:
function gif=compute_gif(pvals)% number of p-vals n=length(pvals);% expected order statistics es=(1:n)' ./ (n+1);% x-axis x = -log10(es); y = -log10(sort(pvals(:)));% compute GIF gif =(x'*y)/(x'*x);% QQ-plot figure; hold; grid; maxh=ceil(log10(n)); xlim([0 maxh]); ylim([0 maxh]); plot(x,y,'bx'); plot(x,x,'r-'); xlabel('-log10(Expected Order Statistics)'); ylabel('-log10(Observed Order Statistics)'); title('QQ Plot');% done return;函数 compute_gif() 只有一个参数,这是p值的list,对p值进行排序并使用该排序生成QQplot计算GIF。
这篇关于GIF(genomic inflation factor)值的计算方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!