14、PCA分析
做芯片PCA主成分分析可以选择使用affycoretools包的plotPCA方法,以样品"GSM363445_LNTT.CEL"、"GSM362948_LTT.CEL"、"GSM363447_LNTT.CEL"、"GSM362949_LTT.CEL"、"GSM363449_LNTT.CEL"、"GSM362947_LTT.CEL"为例:
library(affy)
library(affycoretools)
rawData<-ReadAffy("GSM363445_LNTT.CEL","GSM362948_LTT.CEL","GSM363447_LNTT.CEL", "GSM362949_LTT.CEL","GSM363449_LNTT.CEL","GSM362947_LTT.CEL")
plotPCA(exprs(rawData))

不过affycoretools包比较大,也可以自行编程而不通过affycoretools包:
library(affy)
rawData<-ReadAffy("GSM363445_LNTT.CEL","GSM362948_LTT.CEL","GSM363447_LNTT.CEL","GSM362949_LTT.CEL","GSM363449_LNTT.CEL","GSM362947_LTT.CEL")
x <- t(exprs(rawData)[apply(exprs(rawData),1,function(r) {sum(is.na(r))==0}),])
x <- as.matrix(x)
x <- scale(x, center = T, scale = FALSE) ## arrayanalysis的PCA会默认scale = TRUE
s <- svd(x, nu = 0) ## svd奇异值分解,不需要计算u
pca1 <- list(sdev = s$d, rotation = s$v)
pca1$x <- x %*% s$v
plot(pca1$x[,1],pca1$x[,2],col=c(1:6))
legend("topleft",legend=sampleNames(rawData), lwd=1, col=c(1:6))

可看到两段代码的结果是一样的
14、PCA分析的更多相关文章
- 利用pca分析fmri的生理噪声
A kernel machine-based fMRI physiological noise removal method 关于,fmri研究中,生理噪声去除的价值:一.现在随着技术的提升,高场fm ...
- plink 进行PCA分析
当我们进行群体遗传分析时,得到vcf后,可利用plink进行主成分(PCA)分析: 一.软件安装 1 conda install plink 二.使用流程 第一步:将vcf转换为plink格式 1 p ...
- tornado学习笔记14 HTTP1ServerConnection分析
代表HTTP/1.x 类型的服务器连接,负责处理HTTP/1.x类型的请求. 14.1 构造函数 def __init__(self, stream, params=None, con ...
- <转> 纸牌屋1-4集分析
原文:http://blog.sina.com.cn/s/blog_b86c61490102v56t.html 第一季第一集 主人公弗兰克的出场,是以对待一只邻家将死之狗的态度展开的,充分显示了主人公 ...
- [Mugeda HTML5技术教程之14]案例分析:制作网页游戏
本文档要分析的案例是一个爱消除的网页小游戏,从中可以体会一些Mugeda API的用法和使用Mugeda动画制作网页游戏的方法. (一)游戏规则: 1.开始游戏时,手机出现在最上面一行的任意一格: 2 ...
- PCA分析和因子分析
#由此说明使用prcomp函数时,必须使用标准化过的原始数据.如果使用没有标准化的raw数据(不是相关系数矩阵或者协方差矩阵),必须将参数scale. = T <result>$sdev ...
- PCA分析的疑问
R 与python scikit-learn PCA的主成分结果有部分是反的 通过R和python分别计算出来的PCA的结果存在某些主成分的结果是相反的,这些结果是没有问题的,只是表示这个分量被反转了 ...
- python学习笔记(14):可视化分析
一.Matplotlib 1.用于创建出版质量图表的绘图工具库 2.目的的为Python构建一个Matlab式的绘图接口 3.import matplotlib.pyplot as plt:pyplo ...
- PCA分析,及c++代码实现
本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/fengbingchun/article/details/79235028 主成分分析(Principal Co ...
随机推荐
- linux命令---vi编辑器快速定位行数
linux命令—vi编辑器快速定位行数.删除当前行.和删除当前行后面的全部内容 1.vi 编辑器如何快速定位到第N行 命令方式下 :n http://bbs.chinaunix.net/thread- ...
- rocketmq的生产者生产消息
package com.bfxy.rocketmq.model; import org.apache.rocketmq.client.exception.MQClientException;impor ...
- 最少步数&P1443 马的遍历
1330:[例8.3]最少步数 s数组:记录(1,1)到达每一点需要的最少步数 s[1][1]自然为 0,其余初始化为 -1 que数组:que[#][1] 表示(1,1)可到达点的 x 坐标 q ...
- Linux下深度学习常用工具的安装
.Matlab 2015 64bit 的安装 (一)安装包下载 百度网盘: [https://pan.baidu.com/s/1gf9IeCN], 密码: 4gj3 (二)Vmware 使用Windo ...
- LC 535. Encode and Decode TinyURL
Note: This is a companion problem to the System Design problem: Design TinyURL. TinyURL is a URL sho ...
- springboot2.0+线程池+Jmeter以模拟高并发
声明:原创在这里https://blog.csdn.net/u011677147/article/details/80271174,在此也谢谢哥们. 1.目录结构 2.BusinessThread.j ...
- firefox浏览器插件---网址优化
安装:YSlow插件 之后还必须安装firebug.否则YSlow不能使用. 安装:firebug 下面就可以了
- python去掉空格和 b
直接看下面实例: In [52]: output=subprocess.check_output(["head -c 16 /dev/urandom | od -An -t x | tr - ...
- 14 count(*)
14 count(*) count(*)实现方式 首先要声明,在不同的mysql引擎中,count(*)有不同的实现方式. --myisam引擎把一个表的总行数存在了磁盘,因此执行count(*)的时 ...
- Python:Base3(函数,切片,迭代,列表生成式)
1.Python之调用函数: Python内置了很多有用的函数,我们可以直接调用. 要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数 abs,它接收一个参数. 可以直接从Python的官方 ...