ヒストグラム上に個々のピーク フィット カーブをプロットする方法 (2 つの正規混合をフィット)こんにちは、
複数のピークを含むデータ セットがあり、ヒストグラム プロットの [Fitted Normal 2 Mixture] オプションを使用してうまくフィットさせることができます。これにより、各ピークの平均とシグマ、および重みが数値として出力され、ヒストグラム上にフィット曲線が重ねられます。個々のピークの適合をヒストグラムに重ねて視覚化する方法はありますか?
ありがとう!
デニー
Re: ヒストグラム上に個々のピーク フィット カーブをプロットする方法 (2 つの正規混合をフィット)こんにちは@txnelson 、
通常の分位点プロットでも同様のことができるでしょうか? 添付のようなもの(2つの別個のモード)を作成したいのですが、1つのグラフにカスタマイズを追加して別のグラフに貼り付けた後、「編集」>「フレームの内容をコピー」および「フレームの内容を編集」を使用するだけではなく、自動化された(再現可能な方法)で実行したいと考えています。グラフ。

@パトリックジュリアーノ
Re: ヒストグラム上に個々のピーク フィット カーブをプロットする方法 (2 つの正規混合をフィット)これを試して:
Names Default To Here( 1 );
platform = Data Table( "Big Class.jmp" ) <<
Distribution(
Continuous Distribution(
Column( :height ),
Fit Distribution( Normal Mixtures( Clusters( 2 ) ) )
)
);
Wait( 0 );
Report( platform )[Outline Box( "Distributions" )][Outline Box( "height" )][
Outline Box( "Fitted Normal 2 Mixture" )][Outline Box( "Parameter Estimates" )][
Table Box( 1 )] << Make Into Data Table;
ここでは By 列を使用しています。
Names Default To Here( 1 );
platform = Data Table( "Big Class.jmp" ) <<
Distribution(
Continuous Distribution(
Column( :height ),
Fit Distribution( Normal Mixtures( Clusters( 2 ) ) )
),
by(:sex)
);
Wait( 0 );
Report( platform[1] )[Outline Box( 1 )][Outline Box( "height" )][
Outline Box( "Fitted Normal 2 Mixture" )][Outline Box( "Parameter Estimates" )][
Table Box( 1 )] << Make Combined Data Table;
By 列との違いは、「プラットフォーム」に単一のプラットフォームではなく、プラットフォームのリストが含まれるようになったということです。 したがって、リストの最初のエントリを取得するには、[1] でインデックスを付ける必要があります。 また、レポートの最初のアウトライン ボックスには、グループ別の値が含まれるようになりました。 したがって、名前ではなく番号でインデックスを作成する方が簡単です。
Re: ヒストグラム上に個々のピーク フィット カーブをプロットする方法 (2 つの正規混合をフィット)こんにちは、(投稿で説明されているように) を使用してこのテクニックを試しました。
dist =Distribution( Continuous Distribution(
Column( :Column 1 ),
Fit Distribution( Normal Mixtures( Clusters( 2 ) ) ) ));
私自身のデータ化可能な別のデータの場合、それはうまく機能します。 ただし、<
私が使用した
Fit Distribution( Normal Mixtures( Clusters( 2 ) ) ) ))<<MAKE into="" data="https://community.jmp.com/" table=""></MAKE>
おそらくいくつかの要素的なエラーが発生しましたが、それを見つけることができません。
さらに成功した場合は、コミュニティの親切な助けを借りて、パラメータ別の値を含める方法を学びたいと思っています (データ テーブル内の多くのサブセットに対してこの分析を実行する必要があります)。
よろしくお願いします。
ポール・ラヴン・ソレンセン
Re: ヒストグラム上に個々のピーク フィット カーブをプロットする方法 (2 つの正規混合をフィット)まさに私が探していたものです。 ありがとう!Re: ヒストグラム上に個々のピーク フィット カーブをプロットする方法 (2 つの正規混合をフィット)これを行うには、いくつかの方法があります。どちらもコードに JSL を追加する必要があります。方法 1 は、グラフを右クリックし、[カスタマイズ...] を選択します。これにより、グラフを変更したり、グラフに追加したりすることができます。「+」をクリックするとスクリプトを追加でき、サンプルの 1 つで通常のカーブを作成できます。Y 関数と標準密度関数を使用したプロットの知識があれば、このような曲線を追加できます。
以下は、スクリプトに JSL を追加して、サンプル データの上に 2 つの法線曲線を生成する例です。Add Graphics Script() 関数がその作業を行います。2 つの異なる平均値と標準偏差、およびヒストグラム分布の最大バーのデータ ポイントで割ったデータ ポイントの総数に基づくスケール係数をハードコーディングすることにより、いくつかのショートカットを採用しました。これらのデータ値は、提案している内容に基づいて、特定のスクリプト内で計算する必要があります。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA\Big Class.jmp" );
Dis = dt << Distribution(
Continuous Distribution( Column( :height ), Vertical( 0 ), Density Axis( 1 ) )
);
Report( Dis )[Frame Box( 2 )] << Add Graphics Script(
mu = 63;
sigma = 3.2;
Pen Color( "Red" );
Y Function( Normal Density( (x - mu) / sigma ) / (40 / 12), x );
mu = 51.5;
sigma = .87;
Pen Color( "Blue" );
Y Function( Normal Density( (x - mu) / sigma ) / (40 / 2), x );
);

Add Graphics Script() 関数内のコードは、[カスタマイズ...] オプションを選択した場合にスクリプトに追加するコードと同じです。
Re: ヒストグラム上に個々のピーク フィット カーブをプロットする方法 (2 つの正規混合をフィット)こんにちは、そうです。
全体的なカーブフィットを表示するオプションはありましたが、個々のピークは表示されませんでした。出力したいものは次のとおりです(私の雑な図をお詫びします)。

ありがとう!
Re: ヒストグラム上に個々のピーク フィット カーブをプロットする方法 (2 つの正規混合をフィット)この配信プラットフォームは、次のような曲線の当てはめを表示できます。

dt = New Table( "Two Peaks",
Add Rows( 500 ),
New Column( "Column 1",
Numeric, "Continuous", Format( "Best", 12 ),
Formula(
If( Random Uniform() > 0.3,
Random Normal( 5 ),
Random Normal( 10 )
)
)
)
);
dist =Distribution(
Continuous Distribution(
Column( :Column 1 ),
Fit Distribution( Normal Mixtures( Clusters( 2 ) ) )
)
);