
利用Ancol PCA法將祖源計算器結果與實際情況相結合可視化分析
前言:看到題目的小伙伴是不是內心有一萬個?是不是想問那個Ancol PCA是什么鬼。不知道正常,因為這詞是我造的233333
為什么叫這個名字:眾所周知血統的英文是Ancestry,位置的英文是location,這倆單詞取前三個字母,loc再倒過來去掉c,組合在一起不就是Ancol嗎~PCA就是主成分分析的意思不變哦~
下面教程正式開始:
編程語言:python3.8
模塊:pandas,numpy,sklearn,matplotlib,geopy
整體思路:先將計算器的多維數據降為二維數據并使其作為x,y軸,再將位置數據轉化為一維數據并使其作為z軸,最后組合為三維數據并可視化
代碼:
獲取位置經緯度
?
可視化:
?
結果展示:
?
(此示例是利用了韓國人和吉林省朝鮮族的e11數據以及位置信息做出來的Ancol PCA圖)
此方法的優勢:可以將計算器結果極為相似的兩個或多個族群在散點圖上分散開,并且實現了將基因水平與個體水平較為科學的相結合分析
此方法缺點:點與點的的歐式距離不能準確的反映族群間的遺傳距離,此外,對于暈3D的人來說數據的讀取也較為難受。
此方法的意義:以前大家看祖源的分析方法就只是直接看計算器結果再問問哪里人什么族,推斷。最多也就再結合著傳統的PCA看看。但利用此方法可以將位置信息數字化,更加科學的進行溯源。
下面是Ancol PCA的流程圖:
?
以及繪制流程圖用的代碼:
?
感謝:
數據提供:母系-mtDNA祖源群 ? ?QQ:923891525
提供編程語言:Python ? ? 官網:https://www.python.org
提供模塊:
pandas ? ? ? 官網:https://pandas.pydata.org
numpy ? ? ? ?官網:https://www.numpy.org/
matplotlib ? 官網:https://matplotlib.org
sklearn ? ? ? 官網:https://scikit-learn.org/stable/
geopy ? ? ? ? 項目網站:https://github.com/geopy/geopy
graphviz ? ? 官網:http://www.graphviz.org
??楊昊霖
轉載時請注明出處
為什么叫這個名字:眾所周知血統的英文是Ancestry,位置的英文是location,這倆單詞取前三個字母,loc再倒過來去掉c,組合在一起不就是Ancol嗎~PCA就是主成分分析的意思不變哦~
下面教程正式開始:
編程語言:python3.8
模塊:pandas,numpy,sklearn,matplotlib,geopy
整體思路:先將計算器的多維數據降為二維數據并使其作為x,y軸,再將位置數據轉化為一維數據并使其作為z軸,最后組合為三維數據并可視化
代碼:
獲取位置經緯度
?
可視化:
?
結果展示:
?
(此示例是利用了韓國人和吉林省朝鮮族的e11數據以及位置信息做出來的Ancol PCA圖)
此方法的優勢:可以將計算器結果極為相似的兩個或多個族群在散點圖上分散開,并且實現了將基因水平與個體水平較為科學的相結合分析
此方法缺點:點與點的的歐式距離不能準確的反映族群間的遺傳距離,此外,對于暈3D的人來說數據的讀取也較為難受。
此方法的意義:以前大家看祖源的分析方法就只是直接看計算器結果再問問哪里人什么族,推斷。最多也就再結合著傳統的PCA看看。但利用此方法可以將位置信息數字化,更加科學的進行溯源。
下面是Ancol PCA的流程圖:
?
以及繪制流程圖用的代碼:
?
感謝:
數據提供:母系-mtDNA祖源群 ? ?QQ:923891525
提供編程語言:Python ? ? 官網:https://www.python.org
提供模塊:
pandas ? ? ? 官網:https://pandas.pydata.org
numpy ? ? ? ?官網:https://www.numpy.org/
matplotlib ? 官網:https://matplotlib.org
sklearn ? ? ? 官網:https://scikit-learn.org/stable/
geopy ? ? ? ? 項目網站:https://github.com/geopy/geopy
graphviz ? ? 官網:http://www.graphviz.org
??楊昊霖
轉載時請注明出處
0 個回復
要回復問題請先登錄或注冊