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)