Meta回归分析的原理
Meta回归分析可评价研究间异质性的大小及来源。假如一项元分析纳入了20项研究,其中一些研究发现体育锻炼能改善抑郁症状,一些发现体育锻炼对抑郁情绪没有影响,还有一些研究发现体育锻炼会恶化抑郁。这些研究之间就存在异质性,研究结果的不一致可能是因为研究方案、研究的时间和地区、研究质量、体育锻炼的方式、被试的年龄和性别、抑郁的程度等。为了探究异质性的来源,需要进行Meta回归分析。
统计分析模型
根据统计模型的不同,可将Meta回归分析分为固定效应的Meta回归分析和随机效应的Meta回归分析两大类。
基于固定效应模型的Meta回归分析假设多项研究具有一个共同的效应尺度,各项研究效应尺度存在的差异主要是因为随机误差造成;随机效应模型则假设各项研究不具有共同的效应尺度,而是每项研究都有自己的效应尺度,并将其定义为一随机变量,该变量呈正态分布。固定效应模型要求资料满足正态性、观察值间的独立性和研究间的方差齐性,如对不满足这三个条件的资料进行固定效应的分析, 就有扩大犯I类错误概率的风险;
随机效应模型则只要求资料满足正态性,其它两个条件则不作要求,故扩大了适用范围。在随机效应模型中,有最大似然法、矩法、限制性最大似然法、贝叶斯法等多种用于估计回归方程中的系数和研究间的变异。
本文重点测试下metasoft这个软件。
软件地址、manual:http://genetics.cs.ucla.edu/meta/
文章:Han, B. & Eskin, E. Random-effects model aimed at discovering associations in meta-analysis of genome-wide association studies.2011. Am. J. Hum. Genet. 88: 586–598.
提供四种模型:
Fixed Effects model (FE):就是上面提到的固定效应模型
Random Effects model (RE):随机效应模型
Han and Eskin's Random Effects model (RE2)
Binary Effects model (BE)
得到三类指标:
Summary effect size estimates(效应估计):提供beta值和标准误差SE;
Heterogeneity estimates(异质性估计):Cochran's Q 统计量 和它的p-value, I2
M-values:效应的后验概率
Small m-value (e.g. < 0.1):这项研究没有影响效应
Large m-value (e.g. > 0.9):这项研究有影响效应
输入文件格式:
行为snp
第一列是rsid;
第二列、第三列是研究1的beta值和se;
第四列、第五列是研究2的beta值和se;
以此类推。
缺失值写NA
给个例子如下:
code:
java -jar Metasoft.jar -input example.txt
结果文件:
给个例子如下,自己对照上面表格(只截取了前面几列):
log文件:
-参与分析的snp数量
-纳入分析的study数量
-meanbeta
-heterogeneity
如何矫正人群结构
把snp单独放到一个文件
在命令行加入-lambda_mean
or-lambda_hetero
查看log文件中的meanbeta,heterogeneity
再运行代码,命令行加入-lambda_meanbeta
or -lambda_heterogeneity
如何再单个study中矫正人群结构
在输入文件中,将每个研究的标准误差增加计算的通胀因子的平方根。
画森林图
code:
python pmplot.py [meta_input] [meta_output] [study_name] [study_order] [rsid] [gene_name] [out_file]
举例:
python pmplot.py data/input.txt data/output.txt study.name.txt study.order.txt rs32075748 Apoa2 Apoa2.pdf
看完大概流程是不是觉得还挺简单的?但是一想到制作输入文件是不还挺头疼的?哈哈哈~~~
所以,该软件还给出来转换格式的服务。要提前装好python和R。如下:
python plink2metasoft.py outputfile plink_assoc_file1 plink_assoc_file2 plink_assoc_file3 ...
输出三个结果文件:
.meta file:改好格式的文件;
.mmap file:有SNP map的信息;
.log file:过滤掉的snp信息以及过滤掉的原因。
meta分析结果解读
M-value作为衡量异质性指标
Small m-value (e.g. < 0.1): The study is predicted to not have an effect.
Large m-value (e.g. > 0.9): The study is predicted to have an effect.
Otherwise: It is ambiguous to make a prediction.
根据M-value和它的p值,可以画图P-M plot:
好啦,今天就到这啦,我也是头一次看,大家互相交流吧!加油!