PLINKの使い方 2 〜データクオリティの評価〜

データクオリティの評価方法。
・http://pngu.mgh.harvard.edu/~purcell/plink/summary.shtml
・"Data quality control in genetic case-control association studies" Anderson et al. Nat Protoc. 2010

1. ミッシングジェノタイプ

被験者1人ごとのジェノタイプ結果と、SNPごとのジェノタイプ結果の欠損値を集計し、データのクオリティを評価する。

  • コマンド
    • plink --file data --missing
  • 作成するファイル
    • plink.imiss - 個人ごとの欠損値の集計結果
    • plink.lmiss - SNP(locus)ごとの欠損値の集計結果
  • plink.imiss
    • フォーマット
      • #1                FID                Family ID
        #2                IID                Individual ID
        #3                MISS_PHENO         Missing phenotype? (Y/N)
        #4                N_MISS             Number of missing SNPs
        #5                N_GENO             Number of non-obligatory missing genotypes 
        #6                F_MISS             Proportion of missing SNPs
        
    • ※obligatory missing=お決まりの欠損値:個人ごと、SNPごとに90%のジェノタイプが欠損。
    • PLINKのデフォルトフィルタリングにより、個人の最大欠損数 Maximum per-person missing (MIND)が0.1(10%)以上の個人は解析から自動的に除外される。(オプションmissingにはひっかからない)
    • Andersonらによるとジェノタイプの3-7%が欠損している個人はDNAのクオリティに問題があるとして除外する。
      cat plink.imiss | awk '{if($6>=0.03) print $0}
  • plink.lmiss
    • フォーマット (ドキュメントより訂正)
      • #1    CHR                Chromosome number
        #2    SNP                SNP identifier
        #3     N_MISS             Number of individuals missing this SNP
        #4     N_GENO             Number of non-obligatory missing genotypes
        #5     F_MISS             Proportion of sample missing for this SNP
        
    • PLINKのデフォルトフィルタリングにより、SNPの最大欠損数 Maximum per-SNP missing (GENO)が0.1以上のSNPは解析から除外される。
    • Andersonらによると伝統的にcall-rateが95%以下のマーカーの除外を推奨。
    • フィルタリングの独自設定。
      • plink --file mydata --geno 0.05
    • F_MISS > 0.1で取り除かれるSNP数
      • cat plink.lmiss | awk '{if($5>0.1) print $0}' | wc -l
    • F_MISS > 0.05で取り除かれるSNP数 = GENO > 0.05
      • cat plink.lmiss | awk '{if($5>0.05) print $0}' | wc -l
    • 全てのサンプルにおいて欠損しているSNP数。
      • cat plink.lmiss | awk '{if($5==0) print $0}' | wc -l

2. ミッシングジェノタイプに基づく集団のクラスタリング

欠損値の固有 identity-by-missingness (IBM) に基づき、個人間のミッシングジェノタイプの類似性から集団をクラスタリングする。
似たような手法であるidentity-by-state (IBS)は欠損していないアレルの類似性から集団をクラスタリングする。データ内に同じ人が重複していないか、あるいは血縁者が存在しているかを評価するために用いられる。
  • コマンド
    • plink --file data --cluster-missing

3. ケース・コントロール群とデータ欠損の検証

ケース・コントールの集団の違いによってデータが欠損しているかを検証する。
それぞれのSNPについて、ケース群とコントロール群の間で欠損率が異なるのかカイ二乗検定で評価する。
plink --file mydata --test-missing

4. ハプロタイプに基づくミッシングジェノタイプの妥当性の検証

表現型に対してジェノタイプの欠損がランダムであるかどうかを検証する。
  • コマンド
    • plink --file data --test-mishap
  • アウトプット
    • plink.missing.hap

5. ハーディー・ワインベルクの法則

集団において遺伝型の頻度に偏りがないかどうかを検証する。
ハーディ・ワインベルグの法則(HWE)に当てはまらないSNPはジェノタイピングあるいはジェノタイピングコールのエラーだと推定される。
  • WikiPedia ハーディー・ワインベルクの法則
  • コマンド
    • plink --file data --hardy
  • アウトプット
    • plink.hwe
  • フォーマット
    • #1     CHR           Chromosome
      #2     SNP             SNP identifier
      #3     TEST            Code indicating sample
      #4     A1              Minor allele code
      #5     A2              Major allele code
      #6     GENO            Genotype counts: 11/12/22 
      #7     O(HET)          Observed heterozygosity
      #8     E(HET)          Expected heterozygosity
      #9     P               H-W p-value
  • p-value < 0.001 のSNPを排除する。(Anderson)
  • フィルタリングの設定。
    • plink --file mydata --hwe 0.001

6. アレル頻度

マイナーアレルの頻度が低すぎるものは統計的な解析ができないので、取り除く。
  • コマンド
    • plink --file data --freq
  • アウトプット
    • plink.frq
  • フォーマット
    • #1     CHR       Chromosome
      #2     SNP       SNP identifier
      #3     A1        Allele 1 code (minor allele)
      #4     A2        Allele 2 code (major allele)
      #5     MAF       Minor allele frequency
      #6     NCHROBS   Non-missing allele count
  • PLINKのデフォルトフィルタリングではMAFが0.01以下のものを解析から取り除いている。
  • Andersonらによると、慣例的にMAF 1~2%を閾値とするが、サンプル数が少ない場合は閾値を高く設定する。
  • 一般的なコモンSNPのMAFは0.05なので、フィルタリングを独自に設定する。
    • plink --file mydata --maf 0.05
  • デフォルトのMAF<0.01の設定で取り除かれているSNP数
    • cat plink.frq | awk '{if($5<=0.01) print $0}' | wc -l
  • MAF<0.05の設定で取り除かれるSNP数
    • cat plink.frq | awk '{if($5<=0.05) print $0}' | wc -l

7. SNPの枝刈りに基づく連鎖不平衡

互いに連鎖平衡となっているSNPを取り除いたセットを作成する。
  • コマンド
    • plink --file data --mendel
  • アウトプット
    • plink.prune.in
      plink.prune.out

8. 性別の確認

PEDファイルの性別情報と性染色体のジェノタイプ結果が一致するかどうかを検証する。
  • コマンド
    • plink --file data --check-sex
  • アウトプット
    • plink.sexcheck
  • フォーマット
    • #1     FID     Family ID
      #2     IID     Individual ID
      #3     PEDSEX  Sex as determined in pedigree file (1=male, 2=female)
      #4     SNPSEX  Sex as determined by X chromosome
      #5     STATUS  Displays "PROBLEM" or "OK" for each individual
      #6     F       The actual X chromosome inbreeding (homozygosity) estimate
  • X染色体のホモ接合性(F)は、男性は0.8-1の間で、女性は0.2以下となる。
  • ステータスがOKかどうか。
    • cat plink.sexcheck | awk '{if($5!="OK") print $0}'

  • コマンド
    • PLINK --file data --maf 0.05 --geno 0.05 --hwe 0.001

Share on Google Plus

About Piyoko

    Blogger Comment
    Facebook Comment

0 コメント:

コメントを投稿