BigQuery로 변이 분석

이 페이지에서는 BigQuery로 변이를 분석하는 방법을 설명합니다. 변이참조 게놈과 다른 것으로 확인된 게놈 리전입니다.

다음 예시는 각 샘플의 염색체별로단일 염기 다형성(SNP)에 있는 전이전환 비율을 계산하는 방법을 보여줍니다.

Illumina Platinum Genomes 데이터 세트의 변이 분석

다음 예시는 Illumina Platinum Genomes 프로젝트의 데이터를 사용합니다. 데이터는 BigQuery의 platinum_genomes_deepvariant_variants_20180823 테이블에 있습니다.

이 테이블의 변이를 분석하려면 다음 단계를 완료하세요.

  1. Google Cloud 콘솔에서 BigQuery 페이지로 이동합니다.

    BigQuery 페이지로 이동

  2. 쿼리 작성을 클릭합니다.

  3. 다음 쿼리를 복사하여 새 쿼리 텍스트 영역에 붙여넣습니다.

     #standardSQL
     --
     -- Compute the transition/transversion ratio per sample and reference name.
     --
     WITH filtered_snp_calls AS (
       SELECT
         reference_name,
         c.name,
         CONCAT(reference_bases, '->', alternate_bases[ORDINAL(1)].alt) AS mutation
       FROM
         `bigquery-public-data.human_genome_variants.platinum_genomes_deepvariant_variants_20180823` AS v, UNNEST(v.call) AS c
       WHERE
         # Only include biallelic SNPs.
         reference_bases IN ('A','C','G','T')
         AND alternate_bases[ORDINAL(1)].alt IN ('A','C','G','T')
         AND (ARRAY_LENGTH(alternate_bases) = 1
           OR (ARRAY_LENGTH(alternate_bases) = 2 AND alternate_bases[ORDINAL(2)].alt = '<*>'))
         # Skip homozygous reference calls and no-calls.
         AND EXISTS (SELECT g FROM UNNEST(c.genotype) AS g WHERE g > 0)
         AND NOT EXISTS (SELECT g FROM UNNEST(c.genotype) AS g WHERE g < 0)
         # Include only high quality calls.
         AND NOT EXISTS (SELECT ft FROM UNNEST(c.filter) ft WHERE ft NOT IN ('PASS', '.'))
     ),
    
     mutation_type_counts AS (
       SELECT
         reference_name,
         name,
         SUM(CAST(mutation IN ('A->G', 'G->A', 'C->T', 'T->C') AS INT64)) AS transitions,
         SUM(CAST(mutation IN ('A->C', 'C->A', 'G->T', 'T->G',
                               'A->T', 'T->A', 'C->G', 'G->C') AS INT64)) AS transversions
       FROM filtered_snp_calls
       GROUP BY
         reference_name,
         name
     )
    
     SELECT
       reference_name,
       name,
       transitions,
       transversions,
       transitions/transversions AS titv
     FROM mutation_type_counts
     WHERE
       transversions > 0
     ORDER BY
       titv DESC,
       name
    
  4. 쿼리 실행을 클릭합니다. 쿼리는 다음 응답을 반환합니다.

    reference_name 이름 전이 전환 titv
    1 chr22 NA12892 35299 15017 2.3506026503296265
    2 chr22 NA12889 34091 14624 2.331167943107221
    3 chr17 NA12892 67297 28885 2.3298251687727194
    4 chr22 NA12878 33627 14439 2.3289008934136715
    5 chr22 NA12877 34751 14956 2.3235490772933938
    6 chr22 NA12891 33534 14434 2.323264514341139
    7 chr17 NA12877 70600 30404 2.3220628864623074
    8 chr17 NA12878 66010 28475 2.3181738366988585
    9 chr17 NA12890 67242 29057 2.314141170802216
    10 chr17 NA12889 69767 30189 2.311007320547219
    ... ... ... ... ... ...

titv 열은 전이와 변환 비율을 보여줍니다.

다음 단계