前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >R语言 | GEO数据库表达矩阵标准化

R语言 | GEO数据库表达矩阵标准化

作者头像
LN生物笔记
发布2023-02-23 14:43:21
2.8K2
发布2023-02-23 14:43:21
举报
文章被收录于专栏:LN生物笔记LN生物笔记

✴️前言:我们从GEO数据库下载得到表达矩阵,在进行各种分析之前,首先要做的就是对数据进行标准化。

但并不是所有数据都需要进行标准化,GEO中有些数据是已经标准化了的,有些则没有,需要我们进行一个判断,判断的方法,我在后文会讲到。

众所周知,GEO数据分为芯片数据测序数据。这两种数据他们所采用的标准化方法是不同的,下面分别进行介绍:


🔶芯片数据(基因芯片)

🔵第一类:不用进行标准化的数据

这种数据有明显的几个特征:👇

  • 数据类型是小数而不是整数
  • 表达量数值在50以内(比较小)

一般这种数据都是经过log2转化后的标准化矩阵,不需要再进行标准化步骤,可以直接用于差异分析。

🔵第二类:需要进行log2标准化的数据

这种数据也有明显的几个特征:👇

  • 数据类型是小数而不是整数
  • 表达量数值很大,几百上千上万都有

这种数据就是没经过log2转化后的矩阵,我们需要对它进行转换。转换方法也很简单,直接log2(exp)即可

log2转换是将数据转换为以2为底的对数。这个方法可以将基因表达量转换为“fold change”,即相对于参考样本的基因表达量的增长或减少的倍数。这对于比较不同样本间的差异很有用,因为它考虑了基因表达量的相对大小。

除了用肉眼判断,其实还有一种更可靠的方法,就是用R代码来进行判断:

代码语言:javascript
复制
ex <- exprSet #把需要判断的矩阵命名为ex
qx <- as.numeric(quantile(ex, c(0., 0.25, 0.5, 0.75, 0.99, 1.0), na.rm=T))
LogC <- (qx[5] > 100) ||
  (qx[6]-qx[1] > 50 && qx[2] > 0) ||
  (qx[2] > 0 && qx[2] < 1 && qx[4] > 1 && qx[4] < 2)
if (LogC) { ex[which(ex <= 0)] <- NaN
exprSet <- log2(ex)
print("log2 transform finished")}else{print("log2 transform not needed")}

将以上代码复制粘贴进R语言中,把ex赋值成自己的表达矩阵,然后可以直接运行进行判断。

如果你的矩阵不需要进行log2转换,则会返回

代码语言:javascript
复制
[1] "log2 transform not needed"`

如果你的矩阵需要进行log2转换,这个代码会自动为你进行log2转换,然后返回

代码语言:javascript
复制
[1] "log2 transform finished"`

🔵第三类:Z-score标准化

这种数据的几个特征:👇

  • 数据类型是非负整数而不是小数
  • 表达量有很多的0出现

这种数据我们不能用log2转换,因为log的底数不能为0,因此我们要用另一种标准化方法——Z-score标准化

Z-score标准化是将数据转换为其均值为0,标准差为1的形式。这个方法可以消除不同基因的绝对大小的差异,并使得数据在相同的尺度上。这对于研究基因表达量的变化趋势很有用。 对每个基因,你需要计算这个基因在所有样本中的均值和标准差,然后将每个样本的表达量减去均值,再除以标准差。

🔶测序数据(RNA-seq)

测序数据的标准化方法无非就是,TPM、RPKM/FPKM

这三者(准确来说是两者) 的区别目前的讨论还较多,没有人能给出一个准确且清晰的定义,以及使用情况。缺少有力的参考资料和推算过程来说明他们的区别。


🤔后记:

我查阅了大量关于基因芯片和RNA-seq标准化的资料,目前中文网站上很少有相关的资料,甚至外文网站对于标准化的适用情况的描述都是很模糊的,各执一词,可见标准化在实际操作中其实是非常混乱的。😓很多科研人员自己也搞不清楚的,都是一个模仿另一个这么来做。

如果有人对于标准化有更加深刻的理解,欢迎在我的公众号留言,或者私聊,我们一起探讨。😁


所有文章均为markdown制作,MD源文件可以在微信公众号后台回复相应暗号后得到下载链接。

-此篇文章的暗号为1909。

*我也准备了两份标准化代码,分别是log2标准化Z-score标准化,后台回复log2和Z可获得R代码下载链接。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2023-01-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 LN生物笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 🔶芯片数据(基因芯片)
    • 🔵第一类:不用进行标准化的数据
      • 🔵第二类:需要进行log2标准化的数据
        • 🔵第三类:Z-score标准化
        • 🔶测序数据(RNA-seq)
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档