如何将伽玛分布拟合到 r 中的数据集
本教程介绍如何将伽玛分布拟合到 R 中的数据集。
在 R 中拟合伽玛分布
假设您有一个使用以下方法生成的数据集z :
#generate 50 random values that follow a gamma distribution with shape parameter = 3 #and shape parameter = 10 combined with some gaussian noise z <- rgamma(50, 3, 10) + rnorm(50, 0, .02) #view first 6 values head(z) [1] 0.07730 0.02495 0.12788 0.15011 0.08839 0.09941
要查看伽马分布对数据集z的拟合程度,我们可以使用 R 中的fitdistrplus包:
#install 'fitdistrplus' package if not already installed install. packages ('fitdistrplus') #load package library(fitdistrplus)
使用此包来调整发行版的一般语法是:
fitdist(dataset, distr = “您选择的分布”, method = “您的拟合数据方法”)
在这种情况下,我们将使用伽马分布和最大似然估计方法来拟合之前生成的z数据集来拟合数据:
#fit our dataset to a gamma distribution using mle fit <- fitdist(z, distr = "gamma", method = "male") #view the summary of the fit summary(fit)
这会产生以下结果:
然后我们可以使用以下语法生成图表来显示伽玛分布对数据集的拟合程度:
#produce plots
plot(fit)
这会产生以下图:
以下是我们用于将伽玛分布拟合到 R 数据集的完整代码:
#install 'fitdistrplus' package if not already installed install. packages ('fitdistrplus') #load package library(fitdistrplus) #generate 50 random values that follow a gamma distribution with shape parameter = 3 #and shape parameter = 10 combined with some gaussian noise z <- rgamma(50, 3, 10) + rnorm(50, 0, .02) #fit our dataset to a gamma distribution using mle fit <- fitdist(z, distr = "gamma", method = "male") #view the summary of the fit summary(fit) #produce plots to visualize the fit plot(fit)