SMR分析,基于探针进行数据提取和SMR分析(通用型代码)

Usage,
smr_qtl2gwas(
  smr_exe_path,
  bfile,
  gwas_path,
  qtls_path,
  probes_path = NULL,
  out_path = "./",
  out_prefix = "qtl2gwas",
  diff_freq = 0.2,
  diff_freq_prop = 0.05,
  maf = 0,
  smr_cis_wind = 2000,
  smr_peqtl = 5e-08,
  smr_multi_snp = T,
  smr_multi_set_wind = NULL,
  smr_multi_ld_prune = 0.1,
  heidi_method = 1,
  heidi_peqtl = 0.00157,
  heidi_ld_upper_limit = 0.9,
  heidi_ld_lower_limit = 0.05,
  heidi_min_m = 3,
  heidi_max_m = 20,
  thread_num = 1
)

参数

smr_exe_path

指定smr-1.3.1-win.exe可执行文件的地址

bfile

指定g1000参考基因组的文件地址,如欧洲人群数据:EUR.bed,EUR.bim,EUR.fam。指定到文件的前缀EUR即可。

gwas_path

指定gwas文件(xxx.ma)的地址,需要提前准备好。结局GWAS文件可以是一个或者多个,数据中需要包含列名:SNP,A1,A2,freq,b,se,p,n。

qtls_path

指定qtls文件的地址,qtls_path用来指定提取snp数据的数据源。为SMR输入文件格式,包括:.esi;.epi;.besd文件。

probes_path

指定探针文件所在的地址,提取文件中的探针对应的QTLs数据直接进行SMR分析。当probes_path默认为NULL的时候,将进行qtls(eqtl或mqtl)中所有probe与结局的smr分析。

out_path

文件输出路径,默认当前路径

out_prefix

文件输出前缀,默认smr

diff_freq

对等位基因频率进行质量控制,如果SNP的效应等位基因频率差异在两两配对的数据集中 (包括the LD reference sample, the eQTL summary data and the GWAS summary data) 的超过指定的差异阈值, 将排除该SNP。默认为0.2。

diff_freq_prop

SMR分析中,允许具有等位基因频率差异的的SNP的最大比例。如果由diff_freq排除的SNP比率大于diff_freq_prop指定的阈值,SMR分析将停止(提示错误信息)。默认值为0.05。

maf

根据参考样本中的次要等位基因频率 (MAF) 阈值去除 SNP,默认值为0。maf的取值范围在0-0.5。

smr_cis_wind

SMR分析中,定义一个以探针为中心的染色体范围,以选择cis-eQTL(通过p值阈值)进行SMR分析。默认值为 2000Kb。

smr_peqtl

SMR分析中,筛选用于SMR分析的top显著相关QTL(如eQTL)的p值,默认为5.0e-8。

smr_multi_snp

是否进行基于多个SNP的smr分析,默认为T。反之则使用top snp进行SMR分析。

smr_multi_set_wind

当smr_multi_snp=T的时候,选定基于多个snp进行SMR分析的基因区域,定义最显著cis-QTL为中心的染色体区域。 默认是选择smr_cis_wind内所有的snp进行SMR分析,默认为NULL。反之,可进行自己指定,如500kb,写作500。

smr_multi_ld_prune

当smr_multi_snp=T的时候,去除纳入SMR分析的QTLs(如eQTL)中存在连锁不平衡的QTLs,默认值是0.1。

heidi_method

HEIDI检验中,指定一个方法进行HEIDI检验。0是最初的原始HEIDI检验,由Zhu et al (2016 Nature Genetics)提出; 1是新的HEIDI检验,模拟结果表明,使用cis-eQTL区域中排名前20位的SNP(按照p值进行排序)进行异质性测试,HEIDI测试的功效最初增加,但随着SNP数量(m)的增加而降低,峰值在m = ~20。 默认值为 1。

heidi_peqtl

HEIDI检验中,筛选用于HEIDI检验的QTL的p值,默认p值为1.57e-3,相当于卡方值 (df=1) 10。

heidi_ld_upper_limit

HEIDI检验中,用于排除与top SNP存在显著连锁不平衡的QTL(如eQTL),默认值是0.9。

heidi_ld_lower_limit

HEIDI检验中,用于排除与top SNP不存在连锁不平衡或者微弱连锁不平衡的QTL(如eQTL),默认值是0.05。

heidi_min_m

HEIDI检验中,使用顺式snp数量的最小数量,小于该阈值将不进行HEIDI检验。因为如果SNP的数量太少,HEIDI测试检测异质性的能力很小,并可能产生误导性的结果。默认值为3。

heidi_max_m

HEIDI检验中,使用顺式snp数量的最大数量,如果经过LD筛选后的cis-SNP的数量大于m,则仅使用前m个SNP进行HEIDI检验(按照QTL的p值进行排序),默认值为20。

thread_num

指定用于并行计算的 OpenMP 线程数。默认值为 1。

分析結果

Examples

smr_qtl2gwas(
smr_exe_path = "./smr-1.3.1-win.exe",
bfile ="./data/1kg.v3/EUR",
gwas_path="./LDL-ebi-a-GCST002222.ma",
qtls_path ="./cage_eqtl_data_lite_hg19/CAGE.sparse.lite",
probes_path="./query_genes.txt",
out_path = "./",
thread_num = 5
)