Github开源生信云平台 DEMO
--covar-name
PC1-PC10
会。
默认情况下,如果你指定了 --covar covar.txt,但没有指定 --covar-name,PLINK2 会自动使用协变量文件中的所有协变量列(除去样本 ID 列)。
--covar covar.txt
例如 covar.txt:
covar.txt
IID Age Sex PC1 PC2 PC3 PC4 PC5 PC6 PC7 PC8 PC9 PC10 SYSCZ034 35 1 0.012 -0.032 ... SYSCZ037 29 2 -0.021 0.018 ...
执行:
plink2 \ --pfile gwas_input \ --covar covar.txt \ --glm
等价于使用:
作为协变量。
当你的协变量文件中包含不想用于本次分析的列时,可以指定:
例如:
IID Age Sex Batch PC1 PC2 PC3 PC4 PC5 PC6 PC7 PC8 PC9 PC10 Center
如果你只想用
而不使用
可以写:
--covar-name Age,Sex,PC1-PC10
或者
--covar-name Age,Sex,PC1,PC2,PC3
虽然不写 --covar-name 也能运行,但在正式 GWAS 中建议明确指定,原因有几点:
plink2 \ --pfile gwas_input \ --pheno pheno.txt \ --covar covar.txt \ --covar-name Age,Sex,PC1-PC10 \ --glm \ --threads 20 \ --out gwas
这是 GWAS 中最常见、也最推荐的写法。
不会。
如果你指定了:
--covar covar.txt \ --covar-name Age,Sex
那么 PLINK2 只会使用 Age 和 Sex 两列作为协变量,不会自动加入 PC1、PC2 等主成分。
Age
Sex
PC1
PC2
例如,covar.txt:
IID Age Sex PC1 PC2 PC3 PC4 PC5 SYSCZ034 35 1 0.012 -0.032 0.001 0.005 -0.003 SYSCZ037 29 2 -0.021 0.018 0.004 -0.002 0.007
不同命令对应的协变量如下:
--covar covar.txt --covar-name Age,Sex
--covar covar.txt --covar-name PC1-PC10
--covar covar.txt --covar-name Age,Sex,PC1-PC10
如果列名连续:
PC1 PC2 ... PC10
可以直接写:
PLINK2 会展开为:
Age Sex PC1 PC2 ... PC10
对于 GWAS,通常推荐明确指定协变量,例如:
这样可以避免因 covar.txt 增加了其他列而导致模型发生变化,也使分析过程更加清晰和可复现。
可以,但不能直接这样写。
原因是 --pheno 和 --covar 在 PLINK2 中是两个独立的数据源:
--pheno
--covar
--covar-name 只能引用 --covar 文件中的列,不能引用 --pheno 文件中的列。
因此,你现在的命令:
--pheno pheno.txt --covar gwas_input.eigenvec --covar-name age,gender,PC1-PC10
要求的是:
age
gender
gwas_input.eigenvec
PC10
如果 gwas_input.eigenvec 只有:
IID PC1 PC2 ... PC10
那么 PLINK 会报类似错误:
Error: Covariate 'age' not found.
通常 GWAS 都会把所有协变量放到一个文件中,例如:
IID age gender PC1 PC2 PC3 PC4 PC5 PC6 PC7 PC8 PC9 PC10 SYSCZ034 35 1 0.012 -0.031 ... SYSCZ037 29 2 -0.021 0.018 ...
然后:
plink2 \ --pfile gwas_input \ --pheno pheno.txt \ --pheno-name Topic \ --covar covar.txt \ --covar-name age,gender,PC1-PC10 \ --glm \ --threads 50 \ --out gwas
这是最常见、也是官方推荐的方式。
IID Topic age gender SYSCZ034 0.43 35 1 SYSCZ037 0.27 29 2
PLINK 不会自动把 age 和 gender 当作协变量。
它只会把 Topic(由 --pheno-name Topic 指定)当作表型,其余列不会因为在 pheno.txt 中就自动成为协变量。
Topic
--pheno-name Topic
pheno.txt
因此,如果想把 age、gender 用作协变量,需要:
你现在有:
IID Topic age gender
IID PC1 ... PC10
建议在分析前先按 IID 合并为一个 covar.txt:
IID
IID age gender PC1 PC2 ... PC10
--pheno pheno.txt --pheno-name Topic --covar covar.txt --covar-name age,gender,PC1-PC10
这是标准的 GWAS 输入方式,也最方便维护和复现。