2012-02-08 8 views
1

とPHPで別のベル曲線を生成し、私は非常に少ないデータからこれらのbellcurvesを生成できるようにしたいと思います:が小さいデータ

bell cuves

私が私に与えるPHPの機能を探していますこれらのベルカーブによって生成されたデータ。私はそれらを表示するために何を使用するのかまだ分かりませんが、まずデータが必要です。

私は数学的にはあまりよくありませんが、私は正規分布を作成しようとしましたが、「薄いベルカーブが必要です」または「大きなものが欲しい」という簡単な方法はありません。

おそらく、上の写真の右側の上にある引数を使用するとクールかもしれません。

私はこれらのグラフのデータポイントをPHPでどのように再現できるか知っていますか?

ありがとうございました!

答えて

4

よく、あなたはnormal distribution's probability density on Wikipediaの数式を調べることができます。この機能の

A PHPの実装は次のようになります。

function normal($x, $mu, $sigma) { 
    return exp(-0.5 * ($x - $mu) * ($x - $mu)/($sigma*$sigma)) 
     /($sigma * sqrt(2.0 * M_PI)); 
} 

この機能は、あなたが投稿ベル曲線の値が得られます。 私は実際に関数に関するWikipediaの記事を読むことをお勧めしますが、簡単に言えば、$muはベルカーブの中央ピークの位置を示し、$sigmaはその幅を決定します($sigmaの値が大きいほど広い分布を意味します)。

+0

私はそれを理解するために時間がかかりましたが、ありがとう!うまくいく! – xtrimsky

+0

これを入力すると、$ x = 0、$ mu = 0、$ sigma = 0.2(blue curb)となり、1.99になります。これは上記の画像(ウィキペディアから取られたもの)とは異なります。何か間違っていますか?ウィキペディアの画像が間違っていますか?それともそれは機能ですか? – xtrimsky

+0

いいえ、約1.99が正しいです。私の推測では、画像は分布(正確な値を提供するのではなく、 '$ sigma 'の異なる値に対するその形状)を説明しようとするだけです。またこのページを見てください:http://www.wolframalpha.com/input/?i=normal+distribution%2C+mu%3D0%2C+sigma%3D0.2 – Carsten