如何从glm.nb()中提取参数并从R中的该分布生成随机数

时间:2017-01-11 17:22:28

标签: r

我首先在我的数据上拟合负二项式

fit<-glm.nb(E ~ R, data=df2)

df2中的E,R数据的格式类似于

R基本上是从1到70的整数,E是十进制数。 现在我想从我对这些数据得到的负二项式拟合中生成100个随机数。我如何使用rnbinom

获取它

目前我正在使用

rnbinom(100,mu=mean(df2$E), size=fit$theta)

但是当我通过

绘制密度函数时
xseq<-seq(1,70,1)
densities<-dnbinom(xseq, mu=mean(df2$E),size=fit$theta)
plot(xseq,densities,col="darkgreen",xlab="",ylab="Density",type="l",lwd=2, cex=2, main="PDF of Negative Binomial")

我的情节看起来与我的数据完全不同,但是当我使用

predict(fit, newdata=data.frame(R=5), type="response")

并继续给出从1到70的R的不同整数值我想我得到了更好的曲线。

xseq<-seq(1,70,1)
plot(predict(fit, newdata=data.frame(R=xseq), type="response"))

我缺少什么,我不知何故需要从负二项分布中生成100个符合我数据的随机数。 这就是我从DENSITIES得到的东西   enter image description here 这就是我从预测中得到的东西 enter image description here

我的数据更像预测曲线

0 个答案:

没有答案