平台輸出到 JSL 變數<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />大家好
您可以將平台輸出中的因子/資料/選擇提取到 JSL 中嗎?
我目前有兩個腳本,我想將它們放在一起。 第一個匯入 Excel 檔案並使用「Fit Distribution (All)」建立分佈腳本,以便使用者可以選擇最佳擬合類型並取得參數。 我可以讓 JSL 讀取使用者選擇的內容和參數嗎? 我想我需要透過 JSL 創建一個包含分佈和擬合的新視窗(現在我將腳本發送到通過打開 Excel 文件創建的數據表,然後運行它),然後有一個“繼續”按鈕在它下面。 我不知道該按鈕要做什麼才能獲取選擇的框和相應的參數,或者註意沒有選擇框,因此我可以通過矩陣與連續擬合函數運行隨機採樣或離散採樣。
我正在做蒙特卡羅,需要每種類型的擬合和參數來為每種類型執行隨機函數。
謝謝。
回覆:平台輸出到 JSL 變數謝謝@ian_jmp 。 這種樹形結構可以幫助我理解我正在演奏的內容。 我迷失了 XPath 功能,但該連結將我帶到了“獲取 XML”,這也很有幫助。我遇到的問題是來自 '...[checkboxbox(1)]<回覆:平台輸出到 JSL 變數
關於「有沒有辦法看到…」的問題,開啟報表視窗後,右鍵點選大綱節點並選擇「編輯 > 顯示樹狀結構」。 您可能還想查看有關“XPath”的主題,例如這個。
回覆:平台輸出到 JSL 變數你好@傑夫·珀金森。 這段程式碼又恢復了活力,我正在嘗試再次解決同樣的問題。@多發性硬化症的解決方案在 JMP 11 中有效,但我無法讓它在 JMP 13 中工作,因為命名約定似乎已更改(如預先警告的那樣)。 不僅順序發生了變化,而且發行版之間的順序似乎也不相同 - 無論是按照它們在 GUI 中列出的順序(通過AICc) 或任意順序@多發性硬化症之前發現過(據我所知,請參見下面的範例)。
有沒有一種方法可以查看報告的所有組成部分,以便我可以探索其中的數據並看看是否可以找出我需要的內容? 您如何知道“[tablebox(1)]”或“rdist[Outline Box(“Compare Distributions”)][1][1]”是有效語法? 多謝你們。 很抱歉從未將其標記為答案。
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dist1 = dt << Distribution( Continuous Distribution( Column( :height ), Fit Distribution( All ) ) );
dist2 = dt << Distribution( Continuous Distribution( Column( :weight ), Fit Distribution( All ) ) );
r1 = Report( dist1 );
r2 = Report( dist2 );
m1 = [];
For( i = 1, i <= 11, i++,
m1 = m1 || (r1[Outline Box( "Compare Distributions" )][1][1] << get( i ))
);
m2 = [];
For( i = 1, i <= 11, i++,
m2 = m2 || (r2[Outline Box( "Compare Distributions" )][1][1] << get( i ))
);
show(m1);
show(m2);
m1 的預設值為 Weibull,m2 的預設值為 LogNoraml
m1 = [0 0 0 0 0 0 1 0 0 0 0];
m2 = [0 0 0 0 1 0 0 0 0 0 0];
m1 = [];
For( i = 1, i <= 11, i++,
m1 = m1 || (r1[Outline Box( "Compare Distributions" )][1][1] << get( i ))
);
m2 = [];
For( i = 1, i <= 11, i++,
m2 = m2 || (r2[Outline Box( "Compare Distributions" )][1][1] << get( i ))
);
show(m1);
show(m2);
改為每個選項的第二個選項,m1 為 ExtremeValue,m2 為 Gamma
m1 = [0 0 0 0 0 0 0 1 0 0 0];
m2 = [0 0 0 0 0 0 0 1 0 0 0];
回覆:平台輸出到 JSL 變數無論自動排序的結果如何,似乎都存在一種內部分佈順序。 如果該順序穩定,則可以對其進行硬編碼,如下例所示。 但是,請注意分佈的數量以及順序(和拼寫?)在 JMP 的未來版本中可能會發生變化。
該程式碼在 JMP 11 中適用於我。 選定的分佈和參數估計值分別作為鍵和值儲存在關聯數組中,但當然還有其他選項(例如資料表)。
dt =打開( “$SAMPLE_DATA/大類.jmp” ) ;
距離=分配(連續分佈(柱子( :重量) ,擬合分佈(全部) ) ,僅直方圖) ;
// 依「真實」順序排列的發行版名稱列表
L = { “普通的” , “對數正常” , “2參數威布爾” , “指數” , “伽瑪” , “蘇強森” , “約翰遜·Sl” , 《廣義對數》 , “極值” ,
“普通2混合物” , “普通3混合物” } ;
RDIST =報告(距離) ;
// 新增帶有腳本的按鈕。 手動選擇後點選。
RDIST <<前置(
按鈕盒( “完成後點選” ,
// 尋找所選項目的真實位置(不是自動排序表顯示的位置)
米= [] ;
為了(我= 1 ,我<= 11 ,我++,
米=米|| ( RDIST [輪廓盒( “比較分佈” )][ 1 ][ 1 ] <<得到(我))
) ;
自私主義者=如果( N 行(洛克(米) ) > 1 ,
L [洛克(米)] ,
評估清單( { L [洛克(米)]} )
) ; // 選定的分佈
啊=關聯數組() ; // 用於儲存參數估計值
// 插入值
為了(我= 1 ,我<= N 行(洛克(米) ) ,我++,
啊<<插入項目(自私主義者[我] ,矩陣( RDIST [輪廓盒( “已裝好” ||自私主義者[我] )][編號欄框( “估計” )] <<得到) )
) ;
展示(自我主義者) ;
展示(啊) ;
)
) ;
回覆:平台輸出到 JSL 變數嗨克勞斯,
我仍在努力弄清楚如何選中哪個複選框。
但是,如果您指望 JMP 選擇最合適的選項,因為我們按 AICc 升序對該表進行排序,因此它將始終是第一個表,這樣就可以工作:
dt=open("$SAMPLE_DATA/Big Class.jmp");
dist= dt << Distribution(
Continuous Distribution( Column( :height ), Fit Distribution( All ) )
);
r=report(dist);
disttype=r[outline box("Compare Distributions")][tablebox(1)][StringColBox(1)]<< get (1) ;
paramMatrix=r[outline box("?"||disttype)][outlinebox(1)][tablebox(1)][numberColBox(1)] << get as matrix;
paramList=r[outline box("?"||disttype)][outlinebox(1)][tablebox(1)][numberColBox(1)] << get;
show(disttype, paramMatrix, ParamList);
-傑夫
回覆:平台輸出到 JSL 變數更改標題看看是否可以得到幫助。 數據必須在那裡,但我無法獲取它。 我在建立顯示視窗時嘗試使用“顯示屬性”功能,但無法弄清楚如何拉回所檢查的內容和參數值。 如果我創建自己的複選框列表和表格,我可以獲得它們,但不能使用 JMP 來完成... 自己創建它不是一個選擇,因為我需要平台來完成工作。
回覆:JSL:從 Monte Carlo 的分送平台輸出取得 JSL 的輸入撞。
我想將下面紅色的資料取回到JSL。 我知道如何讓 JSL 建立以下內容,但不知道如何取得使用者選擇的擬合函數,然後將該函數的參數傳回 JSL 中,對於每個分佈。 謝謝。
