PLINK 是一个广泛使用的基因组学分析工具,尤其适用于大规模遗传数据分析。无论是进行全基因组关联研究(GWAS),还是进行简单的基因型数据质量控制,PLINK 都是研究人员的重要工具之一。这里,我们将介绍 PLINK 中一些常用的命令,帮助大家更高效地处理和分析基因型数据。
1. 基本文件操作命令
–make-bed
将现有的文本格式数据(如 .ped 和 .map 文件)转换为二进制格式(.bed, .bim, .fam 文件),以便提高数据处理速度。
plink --ped input.ped --map input.map --make-bed --out output
这条命令将 input.ped 和 input.map 文件转换为二进制格式,并保存为 output.bed、output.bim 和 output.fam 文件。
–bfile
在进行 PLINK 命令时,可以通过指定 .bed、.bim 和 .fam 文件前缀来加载二进制格式的数据文件。
plink --bfile mydata --freq
该命令加载 mydata.bed、mydata.bim 和 mydata.fam 文件,并计算 SNP 频率。
2. 数据过滤命令
–keep 和 –remove
--keep
用于保留指定样本,--remove
用于排除指定样本。这两个命令接受一个包含样本 ID 的文件。
plink --bfile mydata --keep keep_list.txt --make-bed --out filtered_data
这个命令将 keep_list.txt 文件中的样本保留在数据集中,并生成新的二进制文件 filtered_data.bed。
–extract 和 –exclude
--extract
用于选择指定的 SNPs(通过 .txt 文件列出),而 --exclude
用于排除某些 SNPs。
plink --bfile mydata --extract snp_list.txt --make-bed --out selected_snps
此命令将 snp_list.txt 文件中的 SNPs 提取出来,并保存为新的二进制文件 selected_snps.bed。
–maf 和 –geno
--maf
用于设置最小等位基因频率(Minor Allele Frequency),--geno
用于排除缺失率较高的 SNP。
plink --bfile mydata --maf 0.01 --geno 0.05 --make-bed --out filtered_data
这个命令将过滤掉 MAF 小于 1% 或缺失率大于 5%的 SNP。
3. 关联分析命令
–assoc
进行简单的关联分析,计算每个 SNP 和表型之间的关联性。
plink --bfile mydata --assoc --out association_results
该命令将进行每个 SNP 和表型的关联分析,并将结果保存为 association_results.assoc 文件。
–linear
进行线性回归分析,适用于连续表型。
plink --bfile mydata --linear --out linear_results
此命令进行线性回归分析,输出与表型相关的 SNP 及其统计信息。
–logistic
进行 logistic 回归分析,适用于二分类表型(如病例对照研究)。
plink --bfile mydata --logistic --out logistic_results
此命令进行 logistic 回归分析,输出 SNP 与表型的关系。
4. 质量控制命令
–check-sex
用于检查样本的性别是否与遗传数据一致。
plink --bfile mydata --check-sex --out sex_check
该命令将检查数据集中所有样本的性别,并生成 sex_check.sexcheck 文件。
–missing
用于计算样本和 SNP 的缺失情况,帮助识别潜在的质量问题。
plink --bfile mydata --missing --out missing_data
这个命令将生成一个包含缺失数据统计的文件 missing_data.lmiss 和 missing_data.imiss。
5. 文件合并命令
–merge 和 –bmerge
--merge
合并多个 PLINK 数据集,--bmerge
与 --merge
类似,但适用于二进制文件。
plink --bfile data1 --bmerge data2.bed data2.bim data2.fam --make-bed --out merged_data
这个命令将二进制文件 data1 和 data2 合并,并保存为新的 merged_data.bed 文件。
6. 数据导出命令
–recode
将数据从二进制格式转换为其他格式,例如 .ped 格式。
plink --bfile mydata --recode --out ped_format
该命令将 mydata 数据集转换为 .ped 和 .map 文件格式,并保存为 ped_format.ped 和 ped_format.map。
–recode vcf
将 PLINK 二进制数据转换为 VCF 格式。
plink --bfile mydata --recode vcf --out vcf_output
此命令将 mydata 数据集转换为 .vcf 格式,并输出为 vcf_output.vcf 文件。
7. 并行化命令
–threads
指定 PLINK 使用的线程数,从而加速计算。
plink --bfile mydata --assoc --threads 4 --out assoc_results
该命令将在进行关联分析时使用 4 个线程,以加速处理。