r语言实现sem_R语言实现扩增子数据抽平算法

写在前面

现在是20年2月中旬了,今年注定是不平凡的一年,尽然现在都还在家中。但是任务量还是十分繁重。谁让做生物信息的也不用限制什么地点。

为什么我要实现抽平算法呢?16年phyloseq的出现很对我的胃口,因为扩增子数据本身较小,自R语言中的操作也是基本没障碍,本以为phyloseq中实现了抽平的方法,我没有查看源码,直接采用了,但是最近再做一些项目中发现这个抽平方法是有问题的:

c720f6202deee9fb7f145fd4dab611f2.png

library(tidyverse)
ps = readRDS("../ps_liu.rds")

total = min(sample_sums(ps));total
standf = function(x,t = total)(t*(x/sum(x)))

ps11 = transform_sample_counts(ps,standf);ps11

sample_sums(ps11)


简单看一下似乎结果没设么问题?但是当我想想这种抽平写法,却实在想不通这是怎么抽平的。

KO1   KO2   KO3   KO4   KO5   KO6   OE1   OE2   OE3   OE4   OE5   OE6   WT1   WT2   WT3   WT4   WT5   WT6
32049 32049 32049 32049 32049 32049 32049 32049 32049 32049 32049 32049 32049 32049 32049 32049 32049 32049

于是我打开了源代码;从这里我们就发现,这并不是抽平,只是标准化而已。这也很好的解释了standf = function(x,t = total)(t*(x/sum(x)))这行代码的意义。这只是一中标准化方式,意味着如果序列数量较少,按照所谓phyloseq抽平的方式得到的结果不是整数。

function (physeq, fun, ...)
{
if (!identical(length(fun(1:10)), 10L)) {
stop("`fun` not valid function.")
}
if (taxa_are_
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
16s扩增子多样性测序平台是一种用于研究微生物群落多样性的技术。它通过放大16s rRNA基因的特定片段,并对其进行测序,从而可以鉴定出样本中存在的不同微生物种类和丰度。 在选择16s扩增子多样性测序平台时,我们需要考虑以下几个因素: 1. 扩增子选择:不同的16s扩增子可以放大不同的区域,因此选择合适的扩增子可以影响到测序结果的准确性和可靠性。一般来说,常用的扩增子包括V1-V3、V3-V4和V4-V5等。 2. 测序平台:目前常用的测序平台包括Illumina MiSeq、Ion Torrent PGM和454 pyrosequencing等。每种平台的测序深度和准确性都有所不同,因此在选择测序平台时需要考虑所需的数据量以及实验预算。 针对测序数据量的选择,我们需要结合实际需要和预算考虑: 1. 数据需求:根据研究目的和问题的复杂程度,选择适当的数据量可以满足需求。如果只是对样本的一般微生物群落进行初步了解,较小的数据量可能足够。而对于复杂的微生物样本,更大的数据量可以提供更详细的分析信息。 2. 预算限制:不同的测序平台和数据量对应的测序费用也是考虑的重要因素。通常来说,测序费用会随着数据量的增加而增加。因此,我们需要根据实验预算来选择适当的数据量。 总结来说,选择16s扩增子多样性测序平台时需要考虑扩增子的选择以及测序平台的性能;选择测序数据量时需要根据实际需求和实验预算进行权衡。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值