記錄顯示錯誤,但手動執行不標記錯誤嗨,
我有一個簡單的腳本來做六個二元組並按行排列它們。 圖表看起來是正確的,但日誌顯示錯誤。 當我通過對話框進行手動擬合時,將生成繪圖(沒有按行排列),但不會標記任何錯誤。 我正在編寫此腳本以進行分發,因此我想解決此錯誤。 我該在哪裡開始尋找?
提前致謝
安迪
名稱未解決:通過訪問或評估'By',By(:device_ID)/ * ### * /在平台啟動中的異常訪問或評估'Fit Group',Fit Group(/ * ### * / / Bivariate (Y(:Charge_Transfer_%0),X(:cycle_num)),
雙變量(Y(:TvB_%0),X(:cycle_num)),
雙變量(Y(:TvD_%0),X(:cycle_num)),
雙變量(Y(:名稱(“a * _%0”)),X(:cycle_num)),
雙變量(Y(:名稱(“b * _%0”)),X(:cycle_num)),
雙變量(Y(:名稱(“L * _%0”)),X(:cycle_num)),
<< {排成行(6)},
通過(:device_ID)
)
在以下腳本中,錯誤標記為/ * ### * /
Fit Group(
雙變量(Y(:Charge_Transfer_%0),X(:cycle_num)),
雙變量(Y(:TvB_%0),X(:cycle_num)),
雙變量(Y(:TvD_%0),X(:cycle_num)),
雙變量(Y(:名稱(“a * _%0”)),X(:cycle_num)),
雙變量(Y(:名稱(“b * _%0”)),X(:cycle_num)),
雙變量(Y(:名稱(“L * _%0”)),X(:cycle_num)),
<< {排成行(6)},
通過(:device_ID)/ * ### * /
)
dt<<CURRENTDATATABLE></CURRENTDATATABLE>
Re:日誌顯示錯誤,但手動執行不會標記錯誤似乎是JMP 12中的一個錯誤,已在13中修復。看起來JMP的FitGroup嘗試評估by語句,除了實際使用它來按組製作。您可以像這樣解決問題:
dt=open("C:\Program Files\SAS\JMPPRO\12\Samples\Data/big class.jmp");
by=0; // work around JMP 12 issue
New Window( "Big Class - Bivariate",
V List Box(
dt<<FIT group=""></FIT>
現在JMP可以評估變量“by”(並忽略零結果)而不在日誌中生成消息。
編輯:明確這個問題是在FitGroup中。
Re:日誌顯示錯誤,但手動執行不會標記錯誤附件是帶有表腳本的數據表。
通常情節看起來不錯,conern是日誌顯示很多錯誤。 我不喜歡將代碼發佈到產生錯誤的生產中。
安迪
Re:日誌顯示錯誤,但手動執行不會標記錯誤很確定你想要這個
dt<<FIT group=""></FIT>
而不是這個
dt<<BIVARIATE></BIVARIATE>
FitGroup很像平台,需要知道用於製作分組的表格。FitGroup然後運行包含的雙變量平台,每個按組分別運行一次。by組實際上是子集表,使用dt << Bivariate使平台在整個表上運行,而不是FitGroup準備的子集。
我沒有嘗試使用多個打開的數據表,因此可能還有另一個問題。
Re:日誌顯示錯誤,但手動執行不會標記錯誤如果您發布我們可以測試用於故障排除的數據集的清理版本,則解決此問題可能要容易得多。 如果您擔心IP,只需使用隨機數或其他內容替換響應列中的值。
Re:日誌顯示錯誤,但手動執行不會標記錯誤你絕對肯定你的'by'欄的名字完全正確嗎?使用我的修改後的數據集,使用by(名稱(“colname”))語法或僅使用(:colname),它對我來說很好。
您可以嘗試在雙變量代碼之前放置這樣的內容,並查看它在日誌中顯示的內容。
show(as column(:device_id)[1])
它應該顯示該列的第一行的值。如果沒有,找出原因,那可能就是你的答案。
您也可以嘗試show(作為列(OpticalData,:device_id)[1])
對不起,我以前會建議這個...... 我以為你的情節是正確的。
Re:日誌顯示錯誤,但手動執行不會標記錯誤你好
做了2改:
1個當前數據表(opticaldata)
2。強制雙變量到光學數據
如建議。
目前,這使得情節進展順利。 但它並不尊重by device_id。 它使用fir組繪製圖並附加了正確的ID,但是圖顯示的是所有數據,而不是應該由device_id定義的子集。 此外,日誌顯示名稱未解析的device_id錯誤。
如果我創建一個表腳本並以這種方式執行它正確繪圖,但日誌仍在抱怨device_id。
安迪
@mikedriscoll 中寫道:
按照我認為JIm試圖說的那樣,datatable()不會使該表成為當前表,至少我認為它不會。我想你想要當前的數據表(表名)
OpticalData << Bivariate( Y( :name( "Charge_Transfer_%0" ) ), X( :cycle_num ) ),
OpticalData << Bivariate( Y( :name( "TvB_%0" ) ), X( :cycle_num ) ),
OpticalData << Bivariate( Y( :name( "TvD_%0" ) ), X( :cycle_num ) ),
OpticalData << Bivariate( Y( :Name( "a*_%0" ) ), X( :cycle_num ) ),
OpticalData << Bivariate( Y( :Name( "b*_%0" ) ), X( :cycle_num ) ),
OpticalData << Bivariate( Y( :Name( "L*_%0" ) ), X( :cycle_num ) ),
如建議。
Re:日誌顯示錯誤,但手動執行不會標記錯誤按照我認為JIm試圖說的那樣,datatable()不會使該表成為當前表,至少我認為它不會。我想你想要當前的數據表(表名)
Re:日誌顯示錯誤,但手動執行不會標記錯誤
這可能會為您提供解決方案。 強制Bivariates在正確的桌子上操作
New Window( "Fitness - Bivariate",
V List Box(
Fit Group(
OpticalData << Bivariate( Y( :name( "Charge_Transfer_%0" ) ), X( :cycle_num ) ),
OpticalData << Bivariate( Y( :name( "TvB_%0" ) ), X( :cycle_num ) ),
OpticalData << Bivariate( Y( :name( "TvD_%0" ) ), X( :cycle_num ) ),
OpticalData << Bivariate( Y( :Name( "a*_%0" ) ), X( :cycle_num ) ),
OpticalData << Bivariate( Y( :Name( "b*_%0" ) ), X( :cycle_num ) ),
OpticalData << Bivariate( Y( :Name( "L*_%0" ) ), X( :cycle_num ) ),
<<{Arrange in Rows( 6 )},
By( :name( "device_id" ) )
),
)
);
OpticalData << select where( :outlier != "---" );
OpticalData << exclude;
OpticalData << markers( "x" );
OpticalData << clear select;Re:日誌顯示錯誤,但手動執行不會標記錯誤我真的遇到了麻煩。
我需要將它嵌入更長的腳本中。 我認為它現在有一個相關但更大的問題。 該腳本生成了多個數據表,現在它正在嘗試執行錯誤的數據表,即使特別設置了數據表。請注意,即使我特意設置了其他數據表,Fitness-Bivariate fit也會附加到.... SPU.Data表中。 如果我將所需的數據錶帶到for並突出顯示新窗口的腳本並執行。 它會給出正確的圖,但STILL會拋出錯誤。 如果在腳本中執行它甚至不會這樣做,而是給我一個“在訪問或評估BiVariate,Bad Arguement時找不到。
我在Mac和Windows上都使用JMP 12.2.0。
救命!

datatable(OpticalData);
New Window( "Fitness - Bivariate",
V List Box(
Fit Group(
Bivariate( Y( :name("Charge_Transfer_%0" )), X( :cycle_num ) ),
Bivariate( Y( :name("TvB_%0" )), X( :cycle_num ) ),
Bivariate( Y( :name("TvD_%0" )), X( :cycle_num ) ),
Bivariate( Y( :Name( "a*_%0" ) ), X( :cycle_num ) ),
Bivariate( Y( :Name( "b*_%0" ) ), X( :cycle_num ) ),
Bivariate( Y( :Name( "L*_%0" ) ), X( :cycle_num ) ),
<<{Arrange in Rows( 6 )},
By( :name("device_id") )
),
)
);
OpticalData<<SELECT where=""></SELECT>Re:日誌顯示錯誤,但手動執行不會標記錯誤試試這個
dt=open("$sample_data/big class.jmp");
New Window( "Big Class - Bivariate",
V List Box(
dt<<FIT group=""></FIT>
這可能只是在將適合組消息發送到顯式dt時有所不同。
Re:日誌顯示錯誤,但手動執行不會標記錯誤我運行了一個修改過的腳本版本,經過修改以匹配我的數據,即使刪除了列,也無法讓它拋出該錯誤。它似乎在標記,好像它找不到列。它工作的事實幾乎看起來像JMP版本問題,一些化妝品bug在後來的verison中清理過。您使用的JMP版本是什麼?
Re:日誌顯示錯誤,但手動執行不會標記錯誤有幫助的人嗎?
如果我運行腳本,圖表就會生成,但它仍然會拋出錯誤?