#coding:utf-8
__author__ = 'similarface'
import os
import pandas as pd
import matplotlib.pyplot as plt path='plink.eigenvec' def plinkPca(filepath,header=""):
data=pd.read_table(path,header=None,sep=' ')
filterdata=data.loc[:,0:5]
label=filterdata[0].tolist()
label_uniq = list(set(label))
label_uniq.sort(key=label.index)
filterdata.columns=['pop','human','pca0','pca1','pca2','pca3']
colors=['gold', 'red', 'blue', 'green', 'black', 'yellow', 'orangered', 'sienna', 'tomato', 'silver', 'fuchsia', 'orange', 'coral', 'orchid', 'magenta', 'chartreuse', 'navy', 'violet', 'beige', 'khaki', 'tan', 'indigo', 'cyan', 'azure', 'teal']
colors=colors[0:len(label_uniq)]
markers = ['o', 'x', 's', 'p', '^', '>', '+', 'D', '*', '<', '','_']*10
markers=markers[0:len(label_uniq)]
#调整画布大小
fig = plt.figure(figsize=(8,8),dpi=100)
plt.clf()
for i,targer_name,color,marker in zip(range(len(label_uniq)),label_uniq,colors,markers):
plt.scatter(filterdata[filterdata['pop']==targer_name]['pca0'],filterdata[filterdata['pop']==targer_name]['pca1'], s=20, edgecolor='k',c=color,marker=marker)
plt.legend(labels = label_uniq, bbox_to_anchor=(1.0,0.95))
plt.title(header)
plt.show() plinkPca(path,header="EUR PCA")

PLINK pca的更多相关文章

  1. GWAS群体分层 (Population stratification):利用plink对基因型进行PCA

    一.为什么要做祖先成分的PCA? GWAS研究时经常碰到群体分层的现象,即该群体的祖先来源多样性,我们知道的,不同群体SNP频率不一样,导致后面做关联分析的时候可能出现假阳性位点(不一定是显著信号位点 ...

  2. plink 进行PCA分析

    当我们进行群体遗传分析时,得到vcf后,可利用plink进行主成分(PCA)分析: 一.软件安装 1 conda install plink 二.使用流程 第一步:将vcf转换为plink格式 1 p ...

  3. EIGENSTRAT计算PCA的显著性

    之前我写过一篇文章群体遗传分析分层校正,该选用多少个PCA?,里面提到可以通过EIGENSTRAT软件确定显著的主成分,后续就可以将显著的主成分加入协变量中. 这篇文章主要是讲如何通过EIGENSTR ...

  4. Eigensoft-smartpca分析PCA报错:warning (mapfile): bad chrom: Segmentation fault

    目录 问题 解决 问题 一直以来用Eigensoft的smartpca来做群体遗传的PCA分析很顺畅,结果也比较靠谱. 但今天报错如下: $ ~/miniconda3/bin/smartpca -p ...

  5. 用scikit-learn学习主成分分析(PCA)

    在主成分分析(PCA)原理总结中,我们对主成分分析(以下简称PCA)的原理做了总结,下面我们就总结下如何使用scikit-learn工具来进行PCA降维. 1. scikit-learn PCA类介绍 ...

  6. 主成分分析(PCA)原理总结

    主成分分析(Principal components analysis,以下简称PCA)是最重要的降维方法之一.在数据压缩消除冗余和数据噪音消除等领域都有广泛的应用.一般我们提到降维最容易想到的算法就 ...

  7. 机器学习基础与实践(三)----数据降维之PCA

    写在前面:本来这篇应该是上周四更新,但是上周四写了一篇深度学习的反向传播法的过程,就推迟更新了.本来想参考PRML来写,但是发现里面涉及到比较多的数学知识,写出来可能不好理解,我决定还是用最通俗的方法 ...

  8. 数据降维技术(1)—PCA的数据原理

    PCA(Principal Component Analysis)是一种常用的数据分析方法.PCA通过线性变换将原始数据变换为一组各维度线性无关的表示,可用于提取数据的主要特征分量,常用于高维数据的降 ...

  9. 深度学习笔记——PCA原理与数学推倒详解

    PCA目的:这里举个例子,如果假设我有m个点,{x(1),...,x(m)},那么我要将它们存在我的内存中,或者要对着m个点进行一次机器学习,但是这m个点的维度太大了,如果要进行机器学习的话参数太多, ...

随机推荐

  1. html Frame、Iframe、Frameset 的区别 详细出处参考:http://www.jb51.net/web/22785.html

    10.4.1 Frameset与Frame的区别首先讲解Frameset与Frame之间的区别. 用来划分框架,每一个框架由标记.必须在之内使用,代码如下: 在上面的例子当中,把页面分为左右两个部分, ...

  2. zabbix3.2 报错 Database error

    一.Database errorThe frontend does not match Zabbix database. Current database version (mandatory/opt ...

  3. android 开源项目集合

    http://p.codekk.com/ http://www.apkbus.com/code.php http://androidxref.com/ https://www.androidos.ne ...

  4. 一步一步学RenderMonkey(3)——改良Phong光照模型 【转】

    转载请注明出处: http://blog.csdn.net/tianhai110 改良后的Phong光照模型: 上一节实现的phong镜面光照模型,如果固定光源,移动视点(及matView 关联为ma ...

  5. DevExpress 自动匹配宽度,及其他使用笔记

    摘自: http://blog.sina.com.cn/s/blog_53b58e7c0101avl4.html GridControl列自动匹配宽度 -- : 327人阅读 评论() 收藏 举报 / ...

  6. Android-标题状态栏的隐藏

    以下有两种方法,建议使用第一种方法:使用第一种方法,仅仅只需要在Manifest.xml文件中进行一行的配置就行了而且Activity在启动的时候也不会看到那个Title栏第一种方法:在配置文件中进行 ...

  7. AWK 怎么读取标准输入(STDIN)

    在 awk 系列中,我们将会看到几个例子,你可以筛选其他命令的输出代替从一个文件读取输入作为 awk 的输入.我们首先从使用 dir 命令开始,它类似于 ls 命令. 在第一个例子下面,我们使用 di ...

  8. 7个高级技巧帮助你释放大量Mac OS X硬盘空间

    7个高级技巧帮助你释放大量Mac OS X硬盘空间 https://blog.csdn.net/hu434587115/article/details/72874811/

  9. Cocos2dx&amp;Lua - UI显示优化之怎样解决解析大量json文件

    GUIReader中有个widgetFromJsonFile的方法,此方法是用于解析json文件(cocostudio生成的UI的)并返回该文件的父节点(Widget),然后便于进一步的UI操作(如获 ...

  10. HTML学习笔记(五)

    1.       Javascript是一种脚本语言,它的作用是提供用户交互.动态更改内容.数据验证. 2.       我们使用script标签将javascript的语句嵌入到html文档中. 3 ...