1

我想gamma(lambda,k)用直方图叠加拟合模型的 PDF。我写的 :

hist(pressure)
curve(dgamma(x, lambda, k), add=TRUE, col="red")

但我对“x”的值是什么感到困惑。有人帮忙吗?

4

3 回答 3

4
x <- rgamma(100,2,1) #sample
h <- hist(x, plot=FALSE) #generate hist
plot(h, col="grey") #plot hist
xlines <-seq(min(h$breaks),max(h$breaks),length.out=100) #seq of x for pdf
lines(x = xlines,y=dgamma(xlines,2,1) *length(x)*diff(h$breaks)[1])

Histogram with PDF

于 2014-04-15T19:01:56.470 回答
0

x是要为其获取 PDF 值的支持值向量。你可能想比较

plot(dgamma(1:20, shape=1))

http://en.wikipedia.org/wiki/Gamma_distribution的第一个图(参数 1)

于 2014-04-15T18:56:51.107 回答
0

truehist()来自 MASS 包并缩放计数以估计概率密度。

使用lines()density()函数在直方图上叠加权重值的密度图。

library(MASS)

truehist(mtcars$mpg) #mtcars dataset available in base R

lines(density(mtcars$mpg))

在此处输入图像描述

  • 更新: Onc 可以使用ggplot2库中的ggplot()函数绘制相同的图。

    图书馆(ggplot2)

    ggplot(mtcars, aes(x=mpg)) + geom_histogram(aes(y=..density..), binwidth = 1) + geom_density()

于 2017-10-05T07:44:16.917 回答