2017-04-01 13 views
0

Rパッケージfitdistrplusには、フィッティングされた累積密度曲線とデータのヒストグラムをプロットするdenscomp関数があります。 R初心者の方には、このパッケージで利用可能なすべてのプロットに感謝します。ヒストグラムなしのfitdistrplusオブジェクトを使用した累積密度プロットのプロット

ヒストグラムなしで曲線をプロットする簡単な方法はありますか?

histogram = FALSEのようなオプションが、ドキュメントのdenscomp機能で見つかりませんでした。

fitdist$estimateを使用して累積濃度曲線をプロットするにはどうすればよいですか?

+0

downvoteの説明が参考になります! –

答えて

1

denscompの動作を簡単に変更する方法があるかどうかはわかりませんが、fitdistが返す配布パラメータを使用して独自の密度プロットをロールバックできます。ここでは例です:1つのウィンドウで3つのプロットプロットするために設定し

par(mfrow=c(3,1), mar=c(4,4,3,1)) 
library(fitdistrplus) 

denscompのヘルプからadpated例を使用してfitdistオブジェクトを作成します。

data(groundbeef) 
serving <- groundbeef$serving 
fitW <- fitdist(serving, "weibull") 

は、今度は、作ってみよう標準denscompプロット:

denscomp(fitW, plotstyle="graphics", main="denscomp Version") 

fitdistによって返されたパラメータを使用して、独自のワイブル密度をロールオーバーします。 fitW$estimateは、servingデータの適合ワイブル分布のパラメータshapescaleを含んでいます。

x=seq(0, max(serving), length=100) 
serving_dwei = dweibull(x, shape=fitW$estimate["shape"], scale=fitW$estimate["scale"]) 

hist(serving, freq=FALSE, main="Roll Your Own") 
lines(x=x, y=serving_dwei, col="red") 

そして最後に、単独の密度プロット:

plot(x=x, y=serving_dwei, type="l", main="Density alone", xlab="Serving", ylab="Density") 

すべての3つのプロットを以下に示します。

enter image description here

我々は、これらのパラメータを用いて上記と同様のプロットを生成する下記のWeibullフィットと経験的カーネル密度を比較したい場合は、次のようにします。

plot(x=x, y=serving_dwei, type="l", main="Weibull fit plus empirical density", 
    xlab="Serving", ylab="Density", 
    ylim=c(0,max(c(serving_dwei, density(serving)$y)))) 
lines(density(serving), col="red") 

enter image description here

+0

徹底的で明確な回答をお願いします。私の欠けているリンクは密度関数(dweibull)の使用でした。 –

関連する問題