用户工具

站点工具


中心对数转换-lefse分析

中心对数转换

居中对数比变换——clr: Centred Log-Ratio (clr) transformation 参考链接:https://zhuanlan.zhihu.com/p/618644075?utm_id=0

一、clr 的作用和用途

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

composition data(文中简称 CoDa)是指每一列加和后为常数,每一个元素具体信息仅表示其成分(占比)的数据集。

clr(Centered log-ratio transformation)是本文的核心算法,简单来说,就是对原始数据进行矫正。

矫正后的数据可以用于后续的分析有:

1、β多样性分析:可以替代Unifrac或Bray-Curtis距离为基础的PCoA分析,直接用矫正后的结果做PCA分析。

2、差异菌属分析:与ALDex2中的类似,作者建议在差异分析这步可以直接看effect size进行筛选,effect size超过1的可以作为筛选差异菌种的标准,这个过程有助于缩小差异筛选的菌种。

3、矫正菌种之间的相关性:这个主要为了微生物相关系数网络构建服务的。

二、测试路径及clr.R

#使用R包compositions
#填充0值
#data[data == 0] <- 0.0000000001
#clr_data <- as.data.frame(clr(data))

#测试路径:/TJPROJ7/META_ASS/16s/sunhongtao/personal_demand/231225-00007-clr/test2

三、适用于qiime2标准分析的clr接lefse分析

#拷贝featureTable_Relative/到工作目录
#配置group1.list
#配置lefse.list
#本地执行该脚本,运行完后sh get_result.sh

[ -d featureTable_Relative_clr/ ] || mkdir featureTable_Relative_clr/ && rm featureTable_Relative_clr/*
workdir=`pwd`

for i in c f g k o p s
do
/TJPROJ1/META_ASS/script_Advanced_analysis/HUMANn3/software/conda/envs/R_env/bin/Rscript  \
  /TJPROJ7/META_ASS/16s/sunhongtao/personal_demand/231225-00007-clr/clr.R  \
  --data featureTable_Relative/featureTable.sample.$i\.relative.xls  \
  --result featureTable_Relative_clr/featureTable.sample.$i\.relative_clr.xls
done

Relative_clr=$(realpath "featureTable_Relative_clr")
group=$(realpath "group1.list")
vsgroup=$(realpath "lefse.list")
LDA=4

[ -d log ] || mkdir log && rm log/*
while IFS= read -r line; do
    vs=$(echo "$line" | tr '\t' '-')
    sed -e "s#path_to_workdir#$workdir#g" \
        -e "s#path_to_Relative#$Relative_clr#g" \
        -e "s#path_to_group#$group#g" \
        -e "s#vs_group#$vs#g" \
        -e "s#value_to_LDA#$LDA#g" statisticalTest_lefse_origin.sh \
        > log/statisticalTest_lefse_$vs\_LDA$LDA\.sh  &&
    echo -e "qsub -V -cwd -l vf=20G,p=5 -S /bin/bash -q meta_ass.q statisticalTest_lefse_${vs}_LDA${LDA}.sh" >> log/qsub_total.sh
done < "$vsgroup"

cd log
sh qsub_total.sh

#get result
echo -e "zip -r result-lefse-clr-LDA${LDA}.zip featureTable_Relative/ featureTable_Relative_clr/ statisticalTestResult/" > $workdir/get_result.sh

中心对数转换-lefse分析.txt · 最后更改: 2023/12/26 14:30 由 sunhongtao