JMP腳本的挑戰:在使用Include調用的子腳本中運行Distribution平台從父腳本,我使用Include語句調用另一個腳本。另一個腳本,稱為子腳本,生成一些輸出,附加到父腳本生成的輸出。子腳本的輸出包括運行分發平台。第一次運行父腳本時,子腳本的輸出成功附加到父腳本的輸出。第二次運行相同的腳本,在更改了與分發無關的一個選項後,我收到消息“分發腳本中的命令無法識別。沒有要分析的數據“,如果列變量錯誤地傳遞給分發代碼,我認為會生成這樣的消息。這是我的代碼:
示例= Expr(c = CONCAT ( “:” ,colY << 得到名字 );
EVAL ( 替代 ( EXPR ( rdist = 報告 (ldist = 當前數據表 ()<< 分配 (
持續分配 ( 柱 (_col_),垂直( 0 )
適合分佈 (對數正態(密度曲線( 1 ))),
適合分佈 (正常(密度曲線) 1 )))
),僅直方圖))),
EXPR (_col_),
解析 (C) )
));
當我與父腳本隔離運行時,代碼運行正常。
有人可以幫助我,告訴我我做錯了什麼嗎?為什麼它會工作一次,但不是第二次?
Re:使用JMP腳本進行挑戰:在使用Inclu調用的子腳本中運行Distribution平台如果代碼應該工作,那麼其中一個變量的內容必定存在問題。 由於嵌套操作,很難跟踪 - 您可以嘗試將它分開:
c = Concat( ":", colY << Get Name );
show(c);
jsl = Substitute(
Expr(
rdist = Report(
ldist = Current Data Table() << Distribution(
Continuous Distribution(
Column( _col_ ),
Vertical( 0 ),
Fit Distribution( Log Normal( Density Curve( 1 ) ) ),
Fit Distribution( Normal( Density Curve( 1 ) ) ),
),
Histograms Only
)
)
),
Expr( _col_ ), Parse( c )
);
show(jsl);
您可以在日誌窗口中檢查jsl變量以確保它格式正確(如果是,那麼如果您選擇文本,右鍵單擊並選擇運行腳本,它應該正確執行。
Re:使用JMP腳本進行挑戰:在使用Inclu調用的子腳本中運行Distribution平台您說只有在使用包含文件時才會出現問題 - 在這種情況下,您可能需要提供清楚說明包含文件使用的示例代碼。 關於你所展示的代碼,似乎過於復雜:
dt = Open("$SAMPLE_DATA/Big Class.jmp");
colY = "height";
ldist = dt << Distribution(
Continuous Distribution(
Column( Eval(colY) ),
Vertical( 0 ),
Fit Distribution( Log Normal( Density Curve( 1 ) ) ),
Fit Distribution( Normal( Density Curve( 1 ) ) ),
),
Histograms Only
);
rdist = ldist << Report;