問題タブ [gamma-distribution]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
997 参照

r - Rで2次導関数を見つけ、数値導関数でニュートン法を使用する方法

スケール パラメーター 1 のガンマ分布の対数尤度は、次のように記述できます。

(α−1)s−nlogΓ(α) ここで、alpha は形状パラメーターでs=∑logXiあり、十分な統計量です。

n = 30 のサンプルを、形状パラメーター alpha = 4.5 でランダムに描画します。とを使用newton_searchしてmake_derivative、アルファの最尤推定を見つけます。alpha のモーメント推定量、つまり x の平均を初期推定として使用します。R の対数尤度関数は次のとおりです。

次のように make_derivative 関数を作成しました。

newton_search関数を組み込んだ関数も作成しましたmake_derivative。ただし、newton_search対数尤度関数の 2 次導関数を使用する必要があり、それを行うために次のコードを修正する方法がわかりません。

ヒント:対数尤度newton_searchの 1 次および 2 次導関数 ( を使用して数値的に導出) に適用する必要があります。make_derivativeあなたの答えは 4.5 に近いはずです。

を実行するnewton_search2(gllik(), 0.0001, mean(x), conv = 0.001)と、答えが2倍になります。

0 投票する
1 に答える
1232 参照

r - rで非線形最小二乗フィットを行います

私は2つのベクトルを持っています:

非線形最小二乗関数を使用してデータに適合させようとしていますが、エラーが発生し続けます。

nlsModel(formula, mf, start, wts) のエラー: 初期パラメータ推定値での特異勾配行列

私のコードは次のとおりです。

入力したパラメーターは、期待値に近いことがわかっているパラメーターです。ここで私が間違っていることを誰かが知っていますか?

aパラメータ、bおよびのさまざまな初期値を試しましたkが、常に何らかのエラーが発生します。

0 投票する
1 に答える
2359 参照

r - ライブラリ(MASS) fitdistr からヒストグラム プロットに当てはめた (ガンマ) 分布密度曲線を追加します。

一連の観測から得られたガンマ密度関数を観測データのヒストグラムにプロットしたいと思います。ガンマ フィットのヒストグラムとパラメーター推定値を生成できます。これは、マスター データ セットからのデータの複数のサブセットに対して行われています。このループで作成された各ヒストグラムにガンマ密度関数をプロットするにはどうすればよいですか?

私は現在持っています:

を使おうと思っているのですlines()が、指定方法がわかりませんか?

0 投票する
2 に答える
1344 参照

r - 標準偏差に相当するガンマ

を使用して、データに適合するガンマ分布がありますlibary(fitdistrplus)。正規分布で標準偏差を使用するのと同様に、「合理的に」期待できる x 値の範囲を定義する方法を決定する必要があります。

たとえば、平均値から 2 標準偏差以内の x 値は、正規分布からの期待値の妥当な範囲であると見なすことができます。ガンマ分布の形状とレートのパラメーターに基づいて、同様の期待値の範囲を定義する方法について何か提案はありますか?

...たぶん、データの 95% を含む x の 2 つの値を特定するようなものでしょうか?

0 投票する
2 に答える
2511 参照

matlab - MATLAB でガンマ分布のパーセンタイルまたはクォンタイルを見つけるにはどうすればよいですか?

MATLAB に次のガンマ分布があるとします。

ここに画像の説明を入力

この部分の分布の密度を高くしたい (x 軸の範囲)。これを MATLAB で抽出するにはどうすればよいですか? 関数を使用してこの分布を当てはめhistfitます。

ここに画像の説明を入力

PS。私のコード:

0 投票する
1 に答える
958 参照

c++ - ブースト C++ を使用して逆ガンマ分布からランダム サンプルを生成する

次のコードを使用して逆ガンマ分布からサンプリングしようとしています。オンラインで見つけたコードを変更します。私は C++ でのコーディングの専門家ではないので、説明と助けが必要です。

私が得るエラーは次のとおりです。