【直播】我的基因組55:簡單的PCA分析千人基因組的人群分布

2021-02-21 生信技能樹

好久不見,我們的直播又開始啦!今天,我們主要講的是人群分布,先用簡單的PCA來分析一下千人基因組的人群分布吧!

PCA分析,就是主成分分析,我博客有講過(點擊最底部的閱讀原文或複製連結http://www.bio-info-trainee.com/1232.html進行查看)。 PCA的原本目的是因為變量太多,想把它們合併成兩三個變量,從而簡化分析步驟。變量的多少代表維度的多少,一千維的數據已經無法想像了,但是二維和三維還是比較符合認知的。假設用PCA給千人基因組所有個體一個二維坐標,畫在圖上,就可以清清楚楚看到他們的分布了,是不是有規律的聚集成一個個種群。

主成分分析可以得到p個主成分,但是,由於各個主成分的方差是遞減的,包含的信息量也是遞減的,所以實際分析時,一般不是選取p個主成分,而是根據各個主成分累計貢獻率的大小選取前k個主成分。這裡貢獻率就是指某個主成分的方差佔全部方差的比重,實際也就是某個特徵值佔全部特徵值總和的比重。貢獻率越大,說明該主成分所包含的原始變量的信息越強。主成分個數k的選取,主要根據主成分的累積貢獻率來決定,即一般要求累計貢獻率達到85%以上,這樣才能保證綜合變量能包括原始變量的絕大多數信息。

    先下載千人基因組計劃的數據吧(http://www.1000genomes.org/category/population/), 涉及到2504個人,5大人種,26個亞人種!信息都存儲在integrated_call_samples_v3.20130502.ALL.panel文件裡面。

下載千人基因組計劃所有人的基因型的方法我以前講過

mkdir -p ~/annotation/variation/human/1000genomes

cd ~/annotation/variation/human/1000genomes

##ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp/release/20130502/

nohup wget  -c -r -nd -np -k -L -p  ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp/release/20130502 &

我們隨便打開一個染色體看看裡面的數據是什麼~

zcat ALL.chr1.phase3_shapeit2_mvncall_integrated_v3plus_nounphased.rsID.genotypes.GRCh38_dbSNP_no_SVs.vcf.gz |cut -f 1-3


一般全基因組數據都是成千上萬的位點,我沒有看到教程告訴我如何挑選位點,比如http://online.cambridgecoding.com/notebooks/cca_admin/genetic-ancestry-analysis-python 我只能憑感覺挑選 allele frequency 在0.5附近的~

zcat  ALL.chr1.phase3_shapeit2_mvncall_integrated_v3plus_nounphased.rsID.genotypes.GRCh38_dbSNP_no_SVs.vcf.gz  |perl -alne '{/AF=(.*?);/;print join("\t",$F[2],@F[9..$#F]) if $1<0.51 && $1>0.49}' >chr1.alf.test

即使這樣,還是有9520個位點,這樣太多了,畫圖會比較卡,我就挑選了前面的一千個位點來做的。

dat[1:4,1:4]## 做好這個數據即可

# apply PCA - scale. = TRUE is highly

# advisable, but default is FALSE.

dat.pca <- prcomp(dat,

center = TRUE,

scale. = TRUE)

# print method

print(dat.pca)

# plot method

plot(dat.pca, type = "l")

summary(dat.pca)

biplot (dat.pca , scale =0,var.axes =F)

group_info <-read.table('integrated_call_samples_v3.20130502.ALL.panel',header =T,stringsAsFactors = F)

head(group_info)

pop = group_info[match(colname,group_info$sample ),'pop']

super_pop = group_info[match(colname,group_info$sample),'super_pop']

#library(devtools)

#install_github("ggbiplot", "vqv")

dat_tmp= as.data.frame(dat)

dat_tmp$sample = rownames(dat_tmp)

dat_df <- merge(dat_tmp,group_info,by='sample')

library(ggbiplot)

g <- ggbiplot(dat.pca, obs.scale = 1 ,var.scale = 1, var.axes=F,

groups = super_pop, ellipse = TRUE,

circle = TRUE)

g <- g + scale_color_discrete(name = '')

g <- g + theme(legend.direction = 'horizontal',

legend.position = 'top')

print(g)

library(ggfortify)

autoplot(prcomp(dat), data = dat_df, colour = 'super_pop')

還是老規矩,通過Google我找到了可視化方法!

用谷歌搜索來使用ggplot2做可視化(下)

就是上面代碼中的ggbiplot和ggfortify包,很容易就把千人基因組按照5個種群給分開了,當然,如果按照26個亞種會很難看,我就不秀圖片了!而且其實前兩個主成分的貢獻度都很低,說明它們兩個的把人群分開的作用力不夠。

首先是ggbiplot的圖片!

然後是ggfortify 圖片:

我只是隨機挑選的千人基因組計劃的1號染色體的1000個位點!我們看到,我們的數據區分的不是很明顯,我挑選的1000個位點沒辦法把人群清晰分開(前兩個主成分作用力太小了),剛開始我選擇的是26個人種,更加麻煩,現在就標記5個超級人種,勉強還能看到規律。非洲人跟其他人區分挺好的。

AFR, African

AMR, Ad Mixed American

EAS, East Asian

EUR, European

SAS, South Asian

對於這個特定的分析,PCA一個最強大的部分是,一開始,我們無需指定尋找的集群數。

你們覺得哪一個好看呢?(投票ing)

參考文獻:

https://www.r-bloggers.com/computing-and-visualizing-pca-in-r/

https://cran.r-project.org/web/packages/ggfortify/vignettes/plot_pca.html

https://www.analyticsvidhya.com/blog/2016/03/practical-guide-principal-component-analysis-python/

http://stats.stackexchange.com/questions/72839/how-to-use-r-prcomp-results-for-prediction

文:Jimmy

圖文編輯:吃瓜群眾

相關焦點

  • 人類基因組時代的泛基因組學
    這裡我參照薩爾茲伯格的綜述文章將內容分為以下 6 個部分,同時也融入部分我對泛基因組學的理解:單一「參考基因組」分析模式的局限;「泛基因組學」概念的由來和定義構建物種泛基因組的意義;人類泛基因組的構建;泛基因組參考序列的記錄和表示方式;
  • 生物學的機器學習:使用K-Means和PCA進行基因組序列分析 COVID-19...
    在本文中,我將……提供RNA序列的簡單解釋使用K-Means創建基因組信息集群使用PCA可視化集群…並對我們執行的每個程序進行分析來獲取經驗。什麼是基因組序列?如果您對RNA序列有基本的了解,請跳過此部分。與「解碼」相比,基因組測序通常是分析從樣品中提取的脫氧核糖核酸(DNA)的過程。在每個正常細胞內有23對染色體,這些染色體容納著DNA。
  • 基於python的基因組組裝課程
    ,同時開啟了自己的生物信息學筆記整理和分享生涯,讓我甚是懷念啊。基因組的故事我看到2013年的報導:當時腔棘魚基因組這一裡程碑式的基因組研究論文被選作封面文章發表在2013年的4月18日的《自然》雜誌上。現存只有兩種總鰭魚(lobe-finned fish)群能夠代表與陸地脊椎動物相關的、包含進化信息的深譜系,腔棘魚就是其中的一種。
  • 研究通過基因組祖先確定了BCL惡性腫瘤中多個重要的基因組差異
    雖然許多BCL亞型的基因組景觀已經被描述,基因組祖先很少被探索。 來自基金會醫學公司和新澤西州羅格斯癌症研究所(新澤西州唯一的國立癌症研究所指定的綜合癌症中心)的研究人員,利用基因組譜系預測方法對綜合基因組分析數據進行了BCL亞型的基因組譜系分析,並發現了多種基因組差異。
  • Nat Commun | 跨越18Mb的人類多樣性參考基因組?
    因此,在進行人類全基因組重測序(WGS)分析時,來自每個人的WGS數據中很大一部分reads會因為無法比對到參考基因組上而被捨棄,從而潛在地缺失了存在於NUIs中的重要信號。最新的人類基因組參考版本GRCh38中包含了一些缺失序列作為可選擇contigs,在WGS分析中也仍在努力利用可選擇contigs獲得更多信息。
  • 基因組也有「體檢單」,趕緊了解一下
    基因組大小是基因組學研究的問題之一,其分析方法很多,K-mer分析是常用的評估基因組大小、重複與雜合的方法,基因組Suvey分析使用的就是K-mer分析。K-mer是指將一條長度為L的Read,連續切割,連續划動得到的(L-K+1 )個長度為K的核苷酸序列(圖2)。在基因組中,除由測序錯誤導致的低頻率K-mer外,K-mer的頻率與深度的分布應符合泊松分布。
  • 人類首次成功獲得自身參考基因組數據集合
    北京時間6月21日20時30分,由中國深圳華大基因研究院(BGI-Shenzhen)、英國桑格(Sanger)研究所、美國國立人類基因組研究所(NHGRI)等共同發起並主導的「國際千人基因組計劃」(以下簡稱「千人計劃」)協作組同時對外宣布:該計劃第一階段的3個先導項目已圓滿完成,全部數據已存儲於千人計劃所設立的公共資料庫
  • 一個細菌基因組完整分析腳本
    上次內容我們介紹了一個人全基因組完整分析腳本,這次我們來介紹一個完整的細菌基因組分析。本次實驗,有一個大小為4.5M的細菌基因組,採用illumina雙末端測序,測序讀長為pair-end 90bp,測序深度為100X。通過拼接得到該物種的全基因組序列,並進行基因預測,基因注釋等分析。
  • 古早植物進化史 | 琴葉擬南芥基因組
    它的基因組更接近早期擬南芥的基因組序列大小。通過分析雜交種琴葉擬南芥基因組含有32,670個基因,遠多於自交種Ath基因組約27,025個基因。且分化事件分析發現,琴葉擬南芥是在約1千萬年前從原始8倍體擬南芥中分化出來的,其基因組大小為207Mb。而Ath擬南芥基因組(僅125Mb)則是現代擬南芥家系的主要形態。
  • Natue | 地球微生物組的基因組圖集
    該研究擴展了已知的細菌和古生菌的系統發育多樣性44%,廣泛應用於簡化比較分析、交互式探索、代謝建模和批量下載。     本研究展示了這個集合的效用,以了解次級代謝物的生物合成潛力,並解決數以千計的新的寄主與未培育病毒的聯繫。這一資源強調了以基因組為中心的方法在揭示影響生態系統過程的未培養微生物的基因組特性方面的價值。
  • Plant Cell | 清華大學:R-loop影響葉綠體基因組穩定的調控機制
    孫前文課題組通過分析獲得一個新的定位於葉綠體中的RNase H1蛋白(AtRNH1C),發現該蛋白可以調節葉綠體中R-loop水平的變化,從而維持基因組的穩定性和發育(圖1);後續分析揭示AtRNH1C可以與DNA解旋酶協作來解除葉綠體基因組rDNA區轉錄與複製時發生迎面(Head-on)對撞,從而減少DNA的損傷(圖2)。
  • 《核酸研究》:高質量模式微生物基因組資料庫及分析平臺
    平臺不僅集成了目前所有公共來源的模式微生物物種和基因組數據,還發布了大量自測模式微生物基因組數據,是目前國內外模式微生物基因組數據最為豐富的平臺。並且集合了數據搜索下載,新種鑑定,基因組拼接與注釋等在線分析工具,為全球各個保藏中心和廣大分類學家提供一個分類學研究的利器。
  • Nat Commun:沃爾巴克氏菌泛基因組研究
    通過將所有MAG與近100,000個細菌參考基因組作圖,僅發現了一種汙染實例。使用PhyloPhlAn的最大似然方法,揭示了各種遺傳特徵(基因組長度,核苷酸組成)和生物學特徵的高度異質分布。在某些情況下,Wolbachia的系統發育結構可能與某些性狀有關,例如以GC含量低,基因組長度減少為特徵的超群C或以高豐度為特徵的D超群。
  • 尼安德特人基因組草圖公布
    新華網柏林2月12日電 德國研究人員12日公布了他們繪製的尼安德特人基因組草圖,以紀念進化論奠基人達爾文誕辰200周年。  德國馬克斯·普朗克進化人類學研究所12日在一份新聞公報中說,尼安德特人的基因組總共約有32億個鹼基對,他們的草圖涵蓋了其中約63%的鹼基對信息。該研究所說,  特意選擇12日公布草圖數據,就是為了慶祝達爾文誕辰200周年。   尼安德特人是早期曾統治歐洲大陸的古人類。
  • 人類基因組指導手冊發布:生成了詳細基因組圖譜
    近日,中國綠髮會國際工作顧問Fred Dubee先生分享了一則來自人類基因組的全球前沿進展。據美國能源部勞倫斯伯克利國家實驗室在2020年8月15日發布的消息:一項歷時17年的研究計劃,如今已經成功的繪製出了一份詳細的基因組圖譜,揭示了數十萬個潛在調控區域的位置,這一資源將有助於所有人類生物學研究向前發展。
  • 微生物基因組研究掃盲系列|2
    本系列內容涉及基因組學、高通量測序相關基本概念,基因組分析中常見問題等,每期5-10個FAQ,希望對大家有用。大家有其他相關的問題,可以在後臺留言,我們會盡力在下期為您解答。A9:contig的簡單理解是從reads直接組裝獲得的較大片段的集群,每一段都是連續的,中間沒有任何間隔區,一般而言,準確度還是比較高的;scaffolds是基於構建文庫時插入片段的大小,結合contig的序列信息,將多個contig按照一定的排序合併在一起,有些時候中間可能會有N,並且N的數量與真實情況可能會有一點差異
  • 什麼是基因組編輯
    原標題:什麼是基因組編輯(延伸閱讀)   基因是具有遺傳效應的DNA(脫氧核糖核酸)片段,它能控制生物的性狀,支持生命的基本構造和性能。基因組編輯是改變目標基因序列的技術。
  • 一文搞定細菌基因組De Novo測序分析
    本次實驗中的細菌基因組大小為3.4M,通過illumina PE150bp測序,獲得測序數據量為~800M,通過拼接得到該樣本的草圖基因組序列,並進行基因注釋等分析。細菌基因組de novo測序,即從頭測序,是指在沒有任何現有的序列信息的情況下,對某個細菌物種進行測序,利用生物信息學分析手段對序列進行拼裝,從而獲得該細菌物種的基因組序列。細菌基因組重測序是對已有參考基因組序列(Reference Sequence)的物種的不同個體進行基因組測序,並以此為基礎進行個體或群體水平的差異性分析。
  • Nature子刊報導中國乳腺癌基因組圖譜
    腫瘤標本經初步病理驗證、製備後轉入國家人類基因組研究中心進行標準流程的測序及後續的數據分析。 研究人員將納入的乳腺癌患者人為分成三個組,其中隊列 1 新輔助放化療的局部晚期患者,隊列 2 為手術治療的早期患者,隊列 3 為解救治療的晚期患者。
  • CNS三大雜誌解讀基因組研究新成果!
    轉移是引發乳腺癌患者死亡的主要原因,很多研究都分析了乳腺癌早期階段的基因組特性,然而有研究表明,癌症從早期過渡到晚期階段會獲得許多基因組改變,而且早期乳腺癌的基因組特徵或許並不能代表癌症致死性發生的依據。