根据拿到的表达矩阵设为exprSet

1、用scale 进行标准化

数据中心化:数据集中的各个数字减去数据集的均值

数据标准化:中心化之后的数据在除以数据集的标准差。

在R中利用scale方法来对数据进行中心化和标准化

1 scale(data, center=T, scale=F)
2
3 其中,center为T,表示数据中心化
4
5 scale为T,表示数据标准化
6
7 对一个data frame的每一列进行计算

并不是表达矩阵里面的所有基因都可以进行相关性分析,首先去除reads count >1 小于5个的基因(测试样品共有6个)

1 ##过滤reads count >1 小于5
2 exprSet <- exprSet[apply(exprSet,1, function(x) sum(x>1) >5,]
3 ##reads count 差距较大,用log以及scale 缩小差距
4 M <- scale(cor(llog2(exprSet+1)))
5 ##热图
6 pheatmap(M)

2、另一种标准化

 1 exprSet <- exprSet[apply(exprSet,1, function(x) sum(x>1) >5,]
2
3 ##去除文库大小差异
4 exprSet <- log(edgeR::cpm(exprSet)+1)
5
6 ##取mad(绝对中位差)(类似sd)的前50%
7 exprSet <- exprSet[names(sort(apply(exprSet,1,mad),decreasing = T)[1:500]),] ##取前500
8 M <-cor(log2(exprSet+1))
9
10 ##添加group_list
11 tem = data.frame(g=group_list)
12 rownames(tem) <- colnames(M)
13 pheatmap::pheatmap(M, annotation_col = tem,filename = 'cor.png')

3、hclust 聚类分析

欧式距离(Euclidean Distance)

欧式距离是最易于理解的一种距离计算方法,源自欧式空间中两点间的距离公式。

用R语言计算距离主要是dist函数。若X是一个M×N的矩阵,则dist(X)将X矩阵M行的每一行作为一个N维向量,然后计算这M个向量两两间的距离。

表达矩阵是每一行为基因,列为样品名称,所以要进行转至才能计算每个样品之间基因表达量的距离

为了得到更好的聚类分析,也可以将表达矩阵标准化,譬如,log,或者 scale等

1 hc <- hclust(dist(t(exprSet)))
 2 plot(hc)

参考:生信技能树

RNA-seq 生物学重复相关性验证的更多相关文章

  1. 无生物学重复RNA-seq分析 CORNAS: coverage-dependent RNA-Seq analysis of gene expression data without biological replicates

    无生物学重复RNA-seq分析 CORNAS: coverage-dependent RNA-Seq analysis of gene expression data without biologic ...

  2. RNA-seq要做几次生物学重复?找出来的100%都是真正的应答基因

    尹师妹:“哈师兄,做验证实验好辛苦,老板让我提高筛选差异基因的条件,尽量降低假阳性,我该怎么筛?” 小哈打开Evernote,给尹师妹看张表: “瞧见那个100%了吗?30 million mappe ...

  3. RNA seq 两种计算基因表达量方法

    两种RNA seq的基因表达量计算方法: 1. RPKM:http://www.plob.org/2011/10/24/294.html 2. RSEM:这个是TCGAdata中使用的.RSEM据说比 ...

  4. RNA -seq

    RNA -seq RNA-seq目的.用处::可以帮助我们了解,各种比较条件下,所有基因的表达情况的差异. 比如:正常组织和肿瘤组织的之间的差异:检测药物治疗前后,基因表达的差异:检测发育过程中,不同 ...

  5. 使用RDCMan管理SharePoint虚拟机的重复要求验证的问题

    首先,这个软件可以从这里下载: Remote Desktop Connection Manager 同类型的软件还有很多,我没有很多复杂功能的要求,就选择了这款微软官方的,虽然很久都没有更新过了. 为 ...

  6. easy UI的密码长度以及重复输入验证

    自己些项目的时候找的时候也找了一会,所以存下来下次用的时候可以直接用了. 话不多说,直接上代码 <tr> <td>密码:</td> <td><in ...

  7. seq去除重复数据

    DELETE FROM temp_fjh_2 a WHERE a.rowid!=(SELECT MAX(b.rowid) FROM temp_fjh_2 b WHERE a.a=b.a); 表名和列名 ...

  8. 知乎Live总结-重复nature文章笔记Single-cell

    来自知乎Live-孟浩巍 1.文章重要技术及图讲解 首先在转录组RNA-seq中,有基因表达差异.基因融合.可变剪切.RNA单点突变. 在基因组中,单点变异.结构变异,CNV变异(拷贝数变异) 三类基 ...

  9. Circular RNA的产生机制、功能及RNA-seq数据鉴定方法

    推荐关注微信公众号:AIPuFuBio,和使用免费生物信息学资源和工具AIPuFu:http://www.aipufu.com. [Circular RNA的产生机制] Circular RNA,缩写 ...

随机推荐

  1. Microsoft Porject Online 学习随手记一:环境创建和数据导入

    没有想像的简单,也没那么复杂 Project OL之前是Dynamics 365 Enterprise P1中的一个模块,目前最新版本只能简单创建并且已经没有Enterprise P1选项. 主要流程 ...

  2. linux下的IO模型---学习笔记

    1.linux文件系统和缓存 文件系统接口 文件系统-一种把数据组织成文件和目录的存储方式,提供了基于文件的存取接口,并通过文件权限控制访问. 存储层次 文件系统缓存 主存(通常时DRAM)的一块区域 ...

  3. Luogu P1654 OSU! | 期望

    题目链接 很妙的一道题. 题目要求$X^3$的期望值. 直接求不好求. 考虑先求出$X$和$X^2$的期望值,然后再求$X^3$的期望值. 迎.刃.而.解. #include<iostream& ...

  4. shell 中的判断

    一.if的基本语法: if [ command ];then    符合该条件执行的语句 elif [ command ];then    符合该条件执行的语句 else    符合该条件执行的语句 ...

  5. 三、其他主机安装zabbix-agent加入到zabbix

    一.yum (rpm)方式 1,下载安装对应的zabbix-agent的rpm包 rpm -Uvh  https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/ ...

  6. 自动化SQL注入工具 sqlmap 使用手册

    0x00 sqlmap介绍 什么是sqlmap? sqlmap是一个开源的渗透测试工具,它自动化了检测和利用SQL注入缺陷 以及接管数据库服务器的过程.它配备了一个强大的检测引擎 ,以及终极渗透测试仪 ...

  7. PCB各层介绍

    在PCB设计中用得比较多的图层: mechanical 机械层 keepout layer 禁止布线层 Signal layer 信号层 Internal plane layer 内部电源/接地层 t ...

  8. 连接url

    celery broker redis with password broker_url = 'redis://user:password@redishost:6379/0' tooz zookeep ...

  9. k8s 测试环境搭建

    # 安装kubectl https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl-on-linux  # 官方安装 ...

  10. Dao、Controller、Service三层的结构划分

     Java Web基础--Controller+Service +Dao三层的功能划分(摘取自网络)1. Controller/Service/DAO简介:      Controller是管理业务( ...