代码之家  ›  专栏  ›  技术社区  ›  Ahmed

如何计算R中行值间隔处的列平均值?

  •  -3
  • Ahmed  · 技术社区  · 7 年前

    我有 dataframe 它有253行(以Mbps为单位的染色体位置)和1列(每个位置的等位基因得分)。我需要生成一个数据框,其中包含染色体上每0.5 Mbps的等位基因得分的平均值。请帮助使用可执行此操作的R代码。谢谢

    1 回复  |  直到 7 年前
        1
  •  0
  •   IRTFM    7 年前

    本例中的图片足以构建答案,但不足以支持测试。您应该学会以不需要手动重新输入的形式发布数据。(这就是为什么你在累积负面投票。)

    基本的R策略是 cut 创建一个分组变量,然后使用循环构造来累加和应用均值函数。大概这是在一个数据框架中,我假设它被命名为特定的东西,比如 my_alleles :

     tapply( my_alleles$Allele_score,    # act on this vector
                                         # in groups defined by this factor
             cut(my_alleles$Location, 
                 breaks=seq(0, max(my_alleles$Location), by=0.5)
                 ), 
                                         # with this function
             FUN=mean)