如何在直方圖上繪製各個峰值擬合曲線(擬合 2 個常態混合物)你好,
我有一個包含多個峰值的資料集,我可以使用直方圖的擬合正態 2 混合選項來很好地擬合這些峰值。這會輸出每個峰值的平均值和西格瑪以及權重作為數值,並將擬合曲線覆蓋在直方圖上。有沒有辦法視覺化覆蓋在直方圖上的各個峰值擬合?
謝謝!
丹尼
回覆:如何在直方圖上繪製各個峰值擬合曲線(擬合 2 個常態混合物)你好@tx尼爾森,
可以在正常分位數圖上做類似的事情嗎? 我想產生類似附加的內容(兩種單獨的模式),但以自動化(可重現的方式)進行操作,而不僅僅是在將自訂新增到一個圖形並將其貼到另一個圖形後使用“編輯”>“複製框架內容”和“編輯貼上框架內容”圖形。

@派崔克朱利亞諾
回覆:如何在直方圖上繪製各個峰值擬合曲線(擬合 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;
與「按」列的區別在於,「平台」現在有一個平台列表,而不是單一平台。 因此,我們必須使用 [1] 進行索引才能取得清單中的第一個條目。 此外,報告中的第一個大綱框現在包含按組值。 因此,透過數字而不是名稱對其進行索引更容易。
回覆:如何在直方圖上繪製各個峰值擬合曲線(擬合 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>
我可能犯了一些基本錯誤,但找不到它。
此外,如果我成功,在社群的幫助下,我非常想學習如何包含按參數值,如果我使用它(我必須對資料表中的許多子集執行此分析)。
首先十分感謝。
波爾·拉文·索倫森
回覆:如何在直方圖上繪製各個峰值擬合曲線(擬合 2 個常態混合物)正是我正在尋找的東西。 謝謝!回覆:如何在直方圖上繪製各個峰值擬合曲線(擬合 2 個常態混合物)有幾種方法可以做到這一點。兩者都需要將 JSL 添加到您的程式碼中。方法1,右鍵點選圖表,然後選擇“自訂...”。這將允許您修改圖表或新增內容。如果您單擊“+”,它將允許您新增腳本,並且其中一個範例允許建立常態曲線。有了使用 Y 函數和法線密度函數繪圖的一些知識,您就可以添加這樣的曲線。
以下是將 JSL 新增至腳本中以在樣本資料之上產生 2 條常態曲線的範例。Add Graphics Script() 函數完成這項工作。我採取了一些捷徑,透過對兩種不同的平均值和標準差進行硬編碼,以及基於資料點總數除以直方圖分佈中最大條形的資料點的比例因子。這些數據值必須在任何給定的腳本中根據您所提議的內容進行計算。
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 );
);

如果您選擇「自訂...」選項,「新增圖形腳本」() 函數中的程式碼與新增至腳本中的程式碼相同
回覆:如何在直方圖上繪製各個峰值擬合曲線(擬合 2 個常態混合物)嗨,呃,
我確實看到了顯示整體曲線擬合的選項,但沒有看到單個峰值。這是我想要輸出的內容(請原諒我的粗略繪圖):

謝謝!
回覆:如何在直方圖上繪製各個峰值擬合曲線(擬合 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 ) ) )
)
);