美文网首页
R: 中心对数比CLR标准化数据

R: 中心对数比CLR标准化数据

作者: 胡童远 | 来源:发表于2022-03-11 14:22 被阅读0次

比例数据进行中心对数比(Centered Log-ratio, CLR)转化,更接近正态分布。经过clr转换后的数据会出现很多负数,相加等于0(接近0),原先表格里已经有的0可预先转化为一个非常小的数值,如,1E-10。

CLR转化方法

1 安装依赖

install.packages("chemometrics")
install.packages("compositions")

2 测试数据

set.seed(1995)  
data=matrix(abs(round(rnorm(200, mean=1000, sd=500))), 20, 10)  
colnames(data)=paste("Species", 1:10, sep=".")  
rownames(data)=paste("Sample", 1:20, sep=".")  
# 归一化
data_norm=data
for(i in 1:20){
    sample_sum=apply(data, 1, sum)
    for(j in 1:10){
        data_norm[i,j]=data[i,j]/sample_sum[i]
    }
}
library("reshape2")
melt_norm = melt(data_norm)
hist(melt_norm$value)

3 compositions::clr转化

data_clr = compositions::clr(data_norm)
melt_clr = melt(data_clr)
hist(melt_clr$value)

4 chemometrics::clr转化

data_clr_2 = chemometrics::clr(data_norm)
melt_clr_2 = melt(data_clr_2)
hist(melt_clr_2$value)

更多
微生物研究文献解读系列·1:“一切都是相对的?”——CLR变换
微生物组数据的centered log-ratio transformation
Gut metagenome associations with extensive digital health data in a volunteer-based Estonian microbiome cohort. NC 2022

相关文章

  • R: 中心对数比CLR标准化数据

    比例数据进行中心对数比(Centered Log-ratio, CLR)转化,更接近正态分布。经过clr转换后的数...

  • PCA分析

    1.数据标准化 为了统一数据的量纲并对数据进行中心化,在主成分分析之前往往需要对原始数据进行标准化。下面以R语言自...

  • RNA-seq下游分析(2)-数据过滤及标准化

    以下对数据进行标准化

  • 2018-01-08

    "R语言学习笔记之数据标准化" 数据标准化/归一化 数据标准化是将数据按比例缩放,使之落入一个小的特定区间。在某些...

  • scikit-learn_data preprocessing

    主要简单介绍sklearn中的数据预处理preprocessing模块可以对数据进行标准化,而preprocess...

  • 代码解读- scanpy.pp.normalize_total

    作者:童蒙编辑:angelica scanpy代码解读来啦~ 单细胞分析第一步是对数据进行标准化,标准化的方法有很...

  • GEO/TCGA数据是否需要标准化的问题

    一.对于芯片数据: GEO中的Series Matrix File(s)通常是经过了标准化和对数转换的数据,但是不...

  • 归一化(标准化)相关问题

    1. 数据标准化 数据的标准化(normalization)是将数据按比例缩放,使之落入一个小的特定区间。在某些比...

  • 数据框列的索引与排序

    问题: 在R中,如何对数据框的列进行重新排序? 指南: 上述对数据框进行索引的方式是将其看作是一个列表(数据框在实...

  • Day6:逻辑回归案例

    数据下载 一、数据预处理 导入库 导入数据 分割数据集 数据标准化 二、建立逻辑回归模型 R值(准确率): 0.8...

网友评论

      本文标题:R: 中心对数比CLR标准化数据

      本文链接:https://www.haomeiwen.com/subject/yzsarrtx.html