【问题标题】:Overlaying a normal pdf onto a histogram in R将普通pdf叠加到R中的直方图上
【发布时间】:2016-05-24 23:30:05
【问题描述】:

我已经查看了类似的问题,但我无法根据他们的回答解决我的问题。我有一个体重指数数据的直方图。我找到了数据的均值和标准差,我试图用相同的数据均值和标准差覆盖一个普通的 pdf,以将其与直方图进行比较。

这是我目前所拥有的。

我使用 hist(BMI) 绘制直方图。我发现平均值(BMI)为 26.65,标准差(BMI)为 3.47。

我正在尝试使用曲线函数在直方图上绘制具有相同参数的正态曲线。

曲线(dnorm(x, mean = 26.65, sd = 3.47), add = T, col = "red")

HistOverlay

如您所见,红色曲线在直方图的最底部几乎看不到。为什么会出现这个错误?

谢谢。

【问题讨论】:

  • 如果你想绘制密度,你必须将直方图转换为密度 - 将 bin 除以 bin 宽度并确保积分等于 1
  • @SeverinPappadeux 是的。或者你知道在 hist 语句中使用probability=TRUE。

标签: r


【解决方案1】:

正态分布是概率密度函数。因此函数的积分是1。简单来说,就是一个人有这个BMI的概率。要生成您想要的结果,您需要将曲线与人口规模相乘。

大致意思: curve(100*dnorm(x, mean = 26.65, sd = 3.47), add = T, col = "red")

【讨论】:

    猜你喜欢
    • 2013-12-03
    • 2019-09-25
    • 2019-09-24
    • 2023-04-10
    • 1970-01-01
    相关资源
    最近更新 更多