發給 Fit Group 的 JSL 消息設計 JSL 以便將發送到 Fit Group 的消息發送到組內的所有 Fit Model 實例有多難?
例如,如果我在擬合組上使用將腳本保存到數據表,然後我想添加一個代碼塊來對該擬合組中的所有擬合模型進行相同的分析,我可以這樣做嗎? 我知道我可以搜索和替換 Fit Model 調用,並為每個模型插入我的代碼副本。
希望這是有道理的。
回复:發給 Fit Group 的 JSL 消息這是個好消息。 JMP 15 很好。 在這種情況下,JSL 足夠靈活,我可以使用這裡已經提供的代碼來完成工作。 它只需要我花一些時間來弄清楚如何讓它發揮作用。 在 15 中獲得更簡單的方法會很好。
回复:發給 Fit Group 的 JSL 消息謝謝,邁克爾。 那講得通。
我已經記錄了請求並在上面輸入了缺陷 ID。
我也和@John_Sall誰說他理解並認為他可能能夠在 JMP 15 中適應這樣的事情。
回复:發給 Fit Group 的 JSL 消息傑夫,
目前我正在採取創造性的方法來解決這個問題。 在下面的代碼中,“script”和“multicomp”是我之前在代碼中定義的表達式。 “腳本”是 Fit Group 通話。 “multicomp”是指導多重比較(...)的表達式。
newscript = Expr(Fit Group());
For(i=1,i<=N Arg(script),i++,
// look for Fit Model calls
If( Char( Head( Arg(script,i) ) ) == "Fit Model()",
workingarg = Expr(Fit Model());
// add multicomp request to Run argument, pass all other arguments through
For(k=1,k<=N Arg(Arg(script,i)),k++,
workingarglevel2 = Arg( Arg(script,i), k );
If( Char( Head( workingarglevel2 ) ) == "Run",
Insert Into(workingarglevel2, Name Expr(multicomp));
);
Insert Into(workingarg, Name Expr(workingarglevel2));
);
// make assignment function to store each fit model into list
assignment = Expr(Assign());
Insert Into(assignment, Substitute(Expr(fm[__i__]), Expr(__i__), i));
Insert Into(assignment, Name Expr(workingarg));
Insert Into(newscript, Name Expr(assignment));
,
// if not Fit Model, we just pass the argument through to Fit Group
Insert Into(newscript, Arg(script,i))
);
);如果我可以簡單地執行腳本 << 多重比較(...) 會容易得多。 這仍然留下了我將如何定義我的列表“fm”的難題,您也可以在代碼中看到它,我需要這個來獲取適合組中每個適合的報告,以便我可以從中提取信息多重比較(...),但這可能是另一天的難題。
如果我嘗試向 Fit Group 廣播一個不適用於該組的所有成員的參數(例如,我知道 Gaussian Process 中沒有多重比較(...)),JMP 可以簡單地丟棄它不適用的請求嗎不行嗎? 類似於 Try(...) 的工作原理? 就像我執行 Send(msg, fg) 一樣,我們需要做的就是遍歷“fg”的每個元素並執行 Try(Send(msg, elements[i]))?
希望這種澄清更有意義。
邁克爾
回复:發給 Fit Group 的 JSL 消息您能否提供“單個代碼塊進行相同分析”的示例? 你的意思是你想為每個響應擬合相同的模型嗎?
一個問題是 Fit Group() 可以有多種擬合類型,而不僅僅是擬合模型。 例如:
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Tiretread.jmp" );
obj = Fit Group(
Fit Model(
Y( :ABRASION ),
Effects(
:SILICA & RS,
:SILANE & RS,
:SULFUR & RS,
:SILICA * :SILICA,
:SILICA * :SILANE,
:SILANE * :SILANE,
:SILICA * :SULFUR,
:SILANE * :SULFUR,
:SULFUR * :SULFUR
),
Personality( Standard Least Squares ),
Emphasis( Minimal Report ),
Run()
),
Gaussian Process(
Y( :HARDNESS ),
X( :SILICA, :SILANE, :SULFUR ),
Set Correlation Function( "Cubic" )
)
);