lambda=1;
n=100;
alpha=3;
y = dgamma(n, shape=alpha, scale=lambda)
我输入了这个,但是我只得到一个点的图形。我需要生成一个样本,大小为n = 100的Gamma数据,λ= 1,alpha = 3。
答案 0 :(得分:2)
如评论中所述,使用rgamma
而不是dgamma
:
lambda = 1
n = 100
alpha = 3
y = rgamma(n, shape = alpha, scale = lambda)
hist(y, freq = FALSE, ylim=c(0,0.3))
domain = seq(from = 0, to = 8, by = 0.01)
pdf = dgamma(domain, shape = alpha, scale = lambda)
lines(density(y), col='red')
lines(domain, pdf, col='blue')
这是生成的数据的样子。