
利用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 个回复
要回复问题请先登录或注册