【问题标题】:R histogram that sums rather than frequency求和而不是频率的 R 直方图
【发布时间】:2013-02-07 00:19:00
【问题描述】:

我是使用 R 的新手,我正在尝试生成一个直方图,其中轴显示另一列的总和,而不仅仅是频率计数。

示例
我有一个包含两列 RATE 和 BALANCE 的矩阵。我想生成一个直方图,显示余额总和,而不仅仅是记录数。

hist(mydata$RATE) #只显示频率。我如何得到它的总和mydata$BALANCE

我想生成一个对 BALANCE 列求和的直方图,而不仅仅是计算记录数。 hist(mydata$RATE, mydata$BALANCE) 之类的东西,但显然 hist 函数似乎没有采用 sum 参数

【问题讨论】:

    标签: r histogram


    【解决方案1】:

    听起来您正在尝试绘制条形图。相应的函数barplot 可能会有所帮助。

    首先,根据@DWin 的建议,create some reproducible data

    set.seed(1) # Sets the starting seed for pseudo-random number generation
    mydata <- data.frame(RATE = sample(LETTERS[1:5], 100, replace = TRUE),
      BALANCE = rpois(100, 15) * 10)
    

    然后使用函数tapply 创建汇总数据。这将计算您的 BALANCE 变量与您的 RATE 变量的每个值的总和。

    plotdata <- tapply(mydata$BALANCE, mydata$RATE, FUN = sum)
    

    然后使用barplot

    barplot(plotdata)
    

    【讨论】:

      【解决方案2】:

      这不是我们可以测试以查看它是否符合您的期望的示例,(而且您所说的“采用总和参数”也不是很清楚您的意思),但试试这个:

      hist( cumsum( mydata$BALANCE) )
      

      【讨论】:

      • 感谢您的帖子。我会尝试扩展。函数 hist(mydata$RATE) 将按计数(即频率)生成所有速率的直方图。我不想计算费率,而是希望它对矩阵中的余额列求和。我可以使用条形图得到类似的东西。除了条形图没有分成桶。 HistData
      • 我确实显示了“余额的总和”,至少是一种类型的总和。现在您要引入名为“IRTE”的第三列。请举个例子!
      猜你喜欢
      • 2015-07-16
      • 2012-09-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-08
      • 2020-01-27
      • 2020-08-08
      • 2019-12-17
      相关资源
      最近更新 更多