共用方式為


Illumina Platinum 基因組

注意

重要更新 2025 年 5 月:親愛的社群,我們想要通知您有關目前可透過 Azure 取得的 Genomics 開放數據集即將進行的變更。 經過仔細考慮,我們決定將焦點轉移到新的舉措,以更好地為社區服務,並符合我們的長期目標。 因此,在未來幾個月內,Azure 上的 Genomics 開放數據集存取將會即將停用。 我們了解這些數據集對於研究、開發和學習具有價值,我們深表讚賞社群一段時間的貢獻和參與。 感謝您的理解和支援。

全基因體定序可讓全世界的研究人員更完整且精確地歸納人類基因體。 這項工作需要一組基因組中稱為高信賴變異的完整全基因組目錄作為基準。 Illumina 在三代血統中產生了 17 個個體的深度、全基因組序列數據。 使用目前可用的演算法範圍,在每個基因組中稱為變異的 Illumina。

如需資料的詳細資訊,請參閱官方 Illumina 網站

注意

Microsoft 依「現況」提供 Azure 開放資料集。 針對 貴用戶對資料集的使用方式,Microsoft 不提供任何明示或默示的擔保、保證或條件。 在 貴用戶當地法律允許的範圍內,針對因使用資料集而導致的任何直接性、衍生性、特殊性、間接性、附隨性或懲罰性損害或損失,Microsoft 概不承擔任何責任。

此資料集是根據 Microsoft 接收來源資料的原始條款所提供。 資料集可能包含源自 Microsoft 的資料。

資料來源

本資料集是 ftp://ussd-ftp.illumina.com/ 的鏡像

資料量和更新頻率

本資料集包含約 2 GB 的資料,且每天更新。

儲存位置

本資料集儲存於美國西部 2 及美國中西部 Azure 區域。 我們建議您在美國西部 2 或美國中西部配置計算資源,以確保同質性。

資料存取

美國西部 2:’https://datasetplatinumgenomes.blob.core.windows.net/dataset’

美國中西部:'https://datasetplatinumgenomes-secondary.blob.core.windows.net/dataset'

SAS 令牌:sv=2019-02-02&se=2050-01-01T08%3A00%3A00Z&si=prod&sr=c&sig=FFfZ0QaDcnEPQmWsshtpoYOjbzd4jtwIWeK%2Fc4i9MqM%3D

使用條款

資料可供使用且不受限制。 如需詳細資訊和引用詳細資料,請參閱官方 Illumina 網站

連絡人

如有任何此資料集的問題或意見反應,請連絡 platinumgenomes@illumina.com。

資料存取

Azure Notebooks

從 Azure 開放資料集取得 Illumina Platinum Genomes 以及進行初始分析

使用 Jupyter Notebook、GATK 和 Picard 來完成下列工作:

  1. 使用 VariantFiltration 標注基因型
  2. 選取特定變異
  3. 篩選相關的變異 - 無效或特定區域
  4. 執行一致性分析
  5. 將最終 VCF 檔案轉換成資料表

相依性

此筆記本需要下列程式庫:

  • Azure 儲存體 pip install azure-storage-blob

  • numpy pip install numpy

  • 基因體分析工具組 (GATK) (使用者必須使用此筆記本,從 Broad Institute 的網頁將 GATK 下載到相同的計算環境: https://github.com/broadinstitute/gatk/releases)

重要資訊:此筆記本使用 Python 3.6 核心

從 Azure 開放資料集取得基因體學資料

這裡提供數個公用基因數據做為 Azure 開放數據集。 我們會建立連結至該開放資料集的 Blob 服務。 您可以從 Azure 開放資料集中找到適用於 Illumina Platinum Genomes 資料集的資料呼叫過程範例,如下所示:

下載特定的 'Illumina Platinum Genomes'

import os
import uuid
import sys
from azure.storage.blob import BlockBlobService, PublicAccess

blob_service_client = BlockBlobService(account_name='datasetplatinumgenomes', sas_token='sv=2019-02-02&se=2050-01-01T08%3A00%3A00Z&si=prod&sr=c&sig=FFfZ0QaDcnEPQmWsshtpoYOjbzd4jtwIWeK%2Fc4i9MqM%3D')     
blob_service_client.get_blob_to_path('dataset/2017-1.0/hg38/small_variants/NA12877', 'NA12877.vcf.gz', './NA12877.vcf.gz')

1.使用 VariantFiltration 標注基因型

重要事項:請檢查您的 GATK 是否在您的系統上執行。

如果我們想要篩選雜合基因型,我們會使用 VariantFiltration 的 --genotype-filter-expression isHet == 1 選項。 我們可以指定工具的註釋值,以使用 --genotype-filter-name 選項標記雜合基因型。 在這裡,此參數的值會設定為 isHetFilter。 在第一個範例中,我們使用 Illimina Platinum Genomes 的 NA12877.vcf.gz,但使用者可以使用來自其他資料集的任何 vcf 檔案:Platinum Genomes

run gatk VariantFiltration -V NA12877.vcf.gz -O outputannot.vcf --genotype-filter-expression "isHet == 1" --genotype-filter-name "isHetFilter"

2.選取特定變異

從 VCF 檔案中選取變異的子集。 此工具可讓您根據各種準則選取變異子集,以利進行特定分析。 以下這類分析的範例包括比較和對比病例對照、擷取符合特定需求的變異或非變異基因座,或針對某些非預期的結果進行疑難排解。

有許多不同選項可以從較大的判讀集中選取變異子集:

根據完整的樣本名稱或模式比對,從判讀集擷取一或多個樣本。 指定包含準則,在註釋值上設定臨界值,例如「DP > 1000」 (涵蓋範圍深度大於 1000x),「AF < 0.25」(網站,等位基因頻率小於 0.25)。 這些準則會撰寫為「JEXL 運算式」,其記載於使用 JEXL 運算式的文章中。 提供一致性或不一致追蹤,以包含或排除存在於其他指定判讀集的變數。 根據準則來選擇變體,例如其類型(例如,僅限 INDELs)、Mendelian 違規的證據、篩選狀態、等位基因性等。此外,還有多個選項可用來記錄某些註釋的原始值,這些在新召喚集進行子集、修剪等操作時會被重新計算。

輸入:VCF 格式的變異判讀集,可從中選取子集。

輸出:新的 VCF 檔案,其中包含選取的變異子集。

run gatk SelectVariants -R Homo_sapiens_assembly38.fasta -V outputannot.vcf --select-type-to-include SNP --select-type-to-include INDEL -O selective.vcf

3.將篩選的基因型轉換為無效

使用 --set-filtered-gt-to-nocall 執行 SelectVariants,會進一步轉換具有 null 基因型判讀的已標幟基因型。

此轉換是必要的,因為下游工具不會剖析 FORMAT 層級篩選欄位。

如何使用「無效」篩選變異

run gatk SelectVariants -V outputannot.vcf --set-filtered-gt-to-nocall -O outputnocall.vcf

4.使用實況資料檢查 VCF 檔案的一致性

根據實際 VCF 評估輸入 VCF 的網站層級一致性。 此工具會針對彼此評估兩個變異判讀集,並產生六個資料行的摘要計量資料表。

此函式會:

  1. 將 SNP 分層和進行 INDEL 呼叫
  2. 針對真肯定、誤判和誤否定呼叫進行報告
  3. 計算敏感度和精確度

此工具假設 --truth VCF 中的所有記錄都會傳遞真實變異。 針對 -eval VCF,此工具只會使用未篩選的傳遞判讀。

您也可以選擇將工具設定為產生下列變數記錄的 VCF,並附註每個變數的一致性狀態:

真肯定和誤否定 (也就是實際 VCF 中的所有變異):適用於計算敏感度

真肯定和誤判 (也就是評估 VCF 中的所有變異):適用於取得機器學習成品分類器的訓練資料集

這些輸出 VCF 可以傳遞至 VariantsToTable,以在 R 或 Python 中產生 TSV 檔案以進行統計分析。

 run gatk Concordance -R Homo_sapiens_assembly38.fasta -eval outputannot.vcf --truth outputnocall.vcf  --summary summary.tsv 

5.VariantsToTable

將欄位從 VCF 檔案擷取到 Tab 字元分隔的資料表。 此工具會將 VCF 檔案中每個變異的指定欄位擷取至 Tab 字元分隔的資料表,這比使用 VCF 更容易。 根據預設,此工具只會擷取 VCF 檔案中的 PASS 或 (未篩選的) 變異。 篩選的變異可藉由新增 --show-filtered 旗標,來包含在輸出中。 此工具可以擷取 INFO (也就是網站層級) 欄位和 FORMAT (也就是樣本層級) 欄位。

INFO/網站層級欄位:

-F使用 自變數來擷取 INFO 欄位;每個欄位都會佔用輸出檔案中的單一數據行。 欄位可以是任何標準 VCF 資料行 (例如 CHROM、ID、QUAL) 或任何 INFO 欄位中的註釋名稱 (例如 AC、AF)。 此工具也支援下列欄位:

EVENTLENGTH (事件的長度) TRANSITION (1 表示雙等位基因轉換 (SNP),0 表示雙等位基因倒轉 (SNP), -1 表示 INDELs 和多等位) HET (基因異型合子的計數) HOM-REF (同型合子參考基因型的計數) HOM-VAR (同型合子變異基因型的計數) NO-CALL (無效基因型的計數) TYPE (變異類型,可能的值為 NO_VARIATION、SNP、MNP、INDEL、SYMBOLIC 和 MIXED VAR (無參考基因型的計數) NSAMPLES (樣本計數) NCALLED (有效樣本計數) MULTI-ALLELIC (這個變異是複等位基因嗎?true/false)

FORMAT/樣本層級欄位:

使用 -GF 引數來擷取 FORMAT/樣本層級欄位。 此工具會為每個樣本建立名為 "SAMPLE_NAME.FORMAT_FIELD_NAME" 的新資料行,例如,NA12877.GQ、NA12878.GQ。

輸入:

要轉換成資料表的 VCF 檔案

輸出:

Tab 字元分隔的檔案,其中包含 VCF 檔案中要求欄位值。

run gatk VariantsToTable -V NA12877.vcf.gz -F CHROM -F POS -F TYPE -F AC -F AD -F AF -GF DP -GF AD -O outputtable.table

參考資料

  1. VariantFiltration:https://gatk.broadinstitute.org/hc/en-us/articles/360036827111-VariantFiltration
  2. 選取變異:https://gatk.broadinstitute.org/hc/en-us/articles/360037052272-SelectVariants
  3. 一致性:https://gatk.broadinstitute.org/hc/en-us/articles/360041851651-Concordance
  4. 資料表的變異:https://gatk.broadinstitute.org/hc/en-us/articles/360036882811-VariantsToTable
  5. Illumina Platinum Genomes:https://www.illumina.com/platinumgenomes.html

下一步

檢視開放資料集目錄中的其餘資料集。