使用

你可以通过命令行界面(CLI)或Python API来使用它

本程序基于plink二进制文件格式的基因型数据,如果你的数据是vcf格式,请先安装 plink ,测试使用的版本为 plink 1.9

1. 数据预处理

1.1 基因范围文件

此文件可以通过提供的工具 mlqtl gff2rangemlqtl gtf2range 从GFF文件和GTF文件得到,但是由于文件格式的灵活性,不能保证转换的结果完全符合预期,因此建议你在转换后检查生成的文件。

你也可以手动生成和修改此文件,仅需保证文件的格式为制表符或空格分隔的文本文件(tsv或txt)且各列为 染色体,起始位置,结束位置,转录本名(此列不会使用),基因名

备注

需要保证此文件中的染色体名在基因型文件中都存在,否则会因为染色体名的问题找不到对应的SNP

1.2 基因型数据

基因型数据需要是plink二进制格式,通常包括以下三个文件:

  • .bed: 二进制基因型数据文件

  • .bim: 基因型标记信息文件

  • .fam: 样本信息文件

如果你的数据是vcf格式,可以使用以下命令将其转换为plink二进制格式:

plink --vcf ${vcf} --snps-only --allow-extra-chr --make-bed --double-id --vcf-half-call m --out ${out_prefix}

如果数据为plink格式,请确保只含有snp变异,可以使用 --snps-only 参数来过滤掉非SNP变异

plink --bfile ${bed} --snps-only --make-bed --out ${out_prefix}

推荐使用range文件的基因范围来过滤基因型数据中的SNP变异,以在后续计算中节省内存

plink --bfile ${bed} --extract range ${range_file} --make-bed --out ${out_prefix}

1.3 表型数据

表型文件需要是制表符或空格分隔的文本文件(tsv或txt),第一列为样本名,后续列为表型值,需要包含表头。第一列的列名需要为"sample",例如:

sample  trait1  trait2
sample1 1.2 3.4
sample2 2.3 4.5

2. 命令行界面

你可以使用以下命令来运行程序:

mlqtl run -g ${bed} -p ${trait} -r ${range} -j 16 --padj -o result

使用 mlqtl run --help 查看所有可用参数和选项