我是一个 R 初学者,试图安装一个 ZIP:
set.seed(5695)
a<-c(rep(0,250),rpois(n=750,lambda=2))
fpoisZI <- fitdist(a, "ZIP", start=list(sigma=sum(a == 0)/length(a), mu=mean(a)))
我认为这段代码应该没问题,但随后出现错误消息:
必须定义 dZIP 函数
知道我做错了什么吗?
我是一个 R 初学者,试图安装一个 ZIP:
set.seed(5695)
a<-c(rep(0,250),rpois(n=750,lambda=2))
fpoisZI <- fitdist(a, "ZIP", start=list(sigma=sum(a == 0)/length(a), mu=mean(a)))
我认为这段代码应该没问题,但随后出现错误消息:
必须定义 dZIP 函数
知道我做错了什么吗?
对于用于拟合 ZIP 模型的零膨胀泊松分布,您需要库gamlss.dist
. 如果未安装,请使用install.packages('gamlss.dist')
. 那么下面的代码应该可以工作:
library(fitdistrplus)
library(gamlss.dist)
set.seed(5695)
a<-c(rep(0,250),rpois(n=750,lambda=2))
fpoisZI <- fitdist(a, "ZIP", start=list(sigma=sum(a == 0)/length(a), mu=mean(a)))
summary(fpoisZI)
#Fitting of the distribution ' ZIP ' by maximum likelihood
#Parameters :
# estimate Std. Error
#sigma 0.2465825 0.01912744
#mu 1.9672566 0.06196681
#Loglikelihood: -1621.389 AIC: 3246.777 BIC: 3256.593
#Correlation matrix:
# sigma mu
#sigma 1.0000000 0.3968521
#mu 0.3968521 1.0000000