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

这篇文章主要是讲如何通过EIGENSTRAT软件确定显著的主成分。

1下载安装EIGENSTRAT

1.1 下载

下载地址:https://data.broadinstitute.org/alkesgroup/EIGENSOFT/EIG-6.1.4.tar.gz

wget https://data.broadinstitute.org/alkesgroup/EIGENSOFT/EIG-6.1.4.tar.gz

1.2 安装

tar zxvf EIG-6.1.4.tar.gz

2 PCA计算

可以用plink计算PCA,也可以用EIGENSTRAT。

PLINK计算PCA比较简便,个人比较推荐PLINK。

之前已经介绍过怎么用PLINK计算PCA了,这里就不再赘述。

3 确定显著PCA数量

下面讲一下怎么用EIGENSTRAT确定多少个PCA被纳入协变量中。

3.1 如果是用EIGENSTRAT计算得到的PCA

用EIGENSTRAT计算得到后缀为.eval的文件后,使用如下命令:

/bin/twstats -t twtable -i pca.eval -o eigenvaltw.out

3.2 如果是用PLINK计算得到的PCA

用PLINK计算的PCA得到后缀为.eigenval的文件后,使用如下命令:

/bin/twstats -t twtable -i pca.eigenval -o eigenvaltw.out

3.3 结果解读

假定生成的eigenvaltw.out如下:

这张图里前三个PCA的P值小于0.05,说明做关联分析的时候要把前三个PCA加入协变量中。

EIGENSTRAT计算PCA的显著性的更多相关文章

  1. 联合CRF和字典学习的自顶向下的视觉显著性-全文解读

    top-down visual saliency via joint CRF anddictionary learning 自顶向下的视觉显著性是使用目标对象的可判别表示和一个降低搜索空间的概率图来进 ...

  2. 四种比较简单的图像显著性区域特征提取方法原理及实现-----> AC/HC/LC/FT。

    laviewpbt  2014.8.4 编辑 Email:laviewpbt@sina.com   QQ:33184777 最近闲来蛋痛,看了一些显著性检测的文章,只是简单的看看,并没有深入的研究,以 ...

  3. Jordan Lecture Note-9: Principal Components Analysis (PCA).

    Principal Components Analysis (一)引入PCA    当我们对某个系统或指标进行研究时往往会发现,影响这些系统和指标的因素或变量的数量非常的多.多变量无疑会为科学研究带来 ...

  4. 四种简单的图像显著性区域特征提取方法-----AC/HC/LC/FT。

    四种简单的图像显著性区域特征提取方法-----> AC/HC/LC/FT. 分类: 图像处理 2014-08-03 12:40 4088人阅读 评论(4) 收藏 举报 salient regio ...

  5. PCA原理分析

    动机 在机器学习领域中,我们常常会遇到维数很高的数据,有些数据的特征维度高达上百万维,很显然这样的数据是无法直接计算的,而且维度这么高,其中包含的信息一定有冗余,这时就需要进行降维,总的来说,我们降维 ...

  6. 在matlab中实现PCA算法

    function [V,S,E]=princa(X) [m,n]=size(X); %计算矩阵的行m和列n %-------------第一步:标准化矩阵-----------------% mv=m ...

  7. matlab pca基础知识

    PCA的一些基本资料 最近因为最人脸表情识别,提取的gabor特征太多了,所以需要用PCA进行对提取的特征进行降维. 本来最早的时候我没有打算对提取的gabor特征进行降维,但是如果一个图像时64*6 ...

  8. OpenCV学习(35) OpenCV中的PCA算法

    PCA算法的基本原理可以参考:http://www.cnblogs.com/mikewolf2002/p/3429711.html     对一副宽p.高q的二维灰度图,要完整表示该图像,需要m = ...

  9. pca主成份分析方法

    1.应用pca的前提 应用pca的前提是,连续信号具有相关性.相关性是什么,是冗余.就是要利用pca去除冗余. 2.pca的定义 pca是一种去除随机变量间相关性的线性变换.是一种常用的多元数据分析方 ...

随机推荐

  1. 使用Gerrit发送测试邮件

    使用Gerrit发送测试邮件 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.安装HTTP服务 1>.安装HTTP服务 [root@gerrit.yinzhengjie.o ...

  2. docker动态修改端口映射(考虑生产环境)

    今天需要修改一个容器A的外部映射的端口,在宿主机上跑着许多容器,所以在解决这个问题的时候需要考虑两个硬性条件: 1.宿主机上docker的service服务本身不能重启,影响其他线上容器. 2.该容器 ...

  3. 万众期待的kintone开发账号免费开放申请啦!

    亲爱的小伙伴们,等了很久很久的kintone开发账号终于可以免费申请使用了! 有人想问了,什么是kintone? kintone是指无需开发知识,即可根据公司业务轻松创建系统的Cybozu的云服务. ...

  4. DT系统研究之-自定义新建函数

    说说在destoon中,我们二次开发时新建的函数应该放哪里好? 发现部分同学,在学习研究destoon过程中,新建的一些php函数直接放在模块里面,须知这样放置的话,会产生些不良后果. 首先,新建的该 ...

  5. GoLand——配置goproxy.io代理

    前言 由于众所周知的原因,也为了更好的下载go的包,所以找到了goproxy 配置 ctrl+alt+s->Go->Go Modules(vgo)->设置proxy为https:// ...

  6. VS2012 VS2010 VTK引入设置

    1.C/C++ ---> 附加包含的目录 F:/VTK61/VTK-6.1.0/SLN/Filters/Sources F:/VTK61/VTK-6.1.0/VTK-6.1.0/Filters/ ...

  7. UVa10828 Back to Kernighan-Ritchie——概率转移&&高斯消元法

    题意 给出一个程序控制流图,从每个结点出发到每个后继接结点的概率均相等.当执行完一个没有后继的结点后,整个程序终止.程序总是从编号为1的结点开始.你的任务是对于若干个查询结点,求出每个结点的期望执行次 ...

  8. invoke和begininvoke 区别

    一直对invoke和begininvoke的使用和概念比较混乱,这两天看了些资料,对这两个的用法和原理有了些新的认识和理解. 首先说下,invoke和begininvoke的使用有两种情况: 1. c ...

  9. springboot使用jpa案例

    1 创建entity实体类并生成数据库表 @Entity @Table(name="student") public class Student { @Id @GeneratedV ...

  10. window对象(全局对象)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...