使用 JSL 擬合模型時顯示“在資料表中未找到指定列”我有一個腳本,可以從我匯入的表中建立擬合模型。
我的問題是存取資料時出現此錯誤。
“在資料表中找不到指定的欄位。{4759} 在存取或評估“清單”時,{/*###*/data:T_VALUE}”
當我嘗試通過“顯示”訪問該列時,我得到了很好的結果:
“數據:T_VALUE = 1;”
我的程式碼:
data = Open( "C:/Users/taviad/Desktop/Sheet1.jmp" );
Show(data:T_VALUE);
model = data << Fit Model(
Y( data:T_VALUE ),
Effects(
data:x,
data:y,
data:z,
data:c
),
Personality( "Standard Least Squares" ),
Emphasis( "Minimal Report" ),
Run(),
Where( data:b == "param1" & data:n == "param2" ),
);
謝謝。
回覆:使用 JSL 擬合模型中的“資料表中找不到指定列”我設法通過將數據重新保存在新文件上來解決它。我不知道問題出在哪裡,但原始文件不好。回覆:使用 JSL 擬合模型中的“資料表中找不到指定列”您報告的日誌訊息看起來很奇怪。
- 「在資料表中找不到指定的欄位。{4759} 在存取或評估「清單」時,{/*###*/data:T_VALUE}」如果我指定的欄位不存在,則不會收到此錯誤訊息存在。當您為 Y 指定了清單時,這看起來像是錯誤訊息
- 當我嘗試透過“顯示”存取該列時,我得到了良好的結果: “data:T_VALUE = 1;”當 T_VALUE 是表變數且不存在具有該名稱的欄位時,會發生這種情況
- 這是當資料具有名稱為「data:T_VALUE = .;」的欄位時顯示的結果
萬一您的列名是用 CR 或製表符讀入的,您可能想嘗試下面的腳本,它會刪除前導和尾隨空格、製表符、換行符和回車符(新行)
for(i=1, i<=ncol(data), i++,
column(data,i) << set name( Trim( column(data,i) << get name) );
);
回覆:使用 JSL 擬合模型中的“資料表中找不到指定列”我只是不明白錯誤:“T_VALUE = 1”。這使得它看起來像一個標量值,而不是一列。
回覆:使用 JSL 擬合模型中的“資料表中找不到指定列”它是一個專欄。這樣就可以了嗎?
回覆:使用 JSL 擬合模型中的“資料表中找不到指定列”T_VALUE 是資料列還是表變數?擬合最小平方法需要 Y 角色中的資料列。
回覆:使用 JSL 擬合模型中的“資料表中找不到指定列”你好,謝謝你的回答。
我試了一下,得到了同樣的錯誤:
數據:T_VALUE = 1;
在資料表中找不到指定的欄位。{4759} 在存取或評估「List」時,{/*###*/data:T_VALUE}
回覆:使用 JSL 擬合模型中的“資料表中找不到指定列”當 JMP 繼續運行擬合模型時,它可能尚未完成開啟資料表。如果是這種情況,透過新增運行公式請求將強制 JMP 完成 Open() 函數,並且應該可以解決該問題。
data = Open( "C:/Users/taviad/Desktop/Sheet1.jmp" );
data << run formulas;
model = data << Fit Model(
Y( data:T_VALUE ),
Effects( data:x, data:y, data:z, data:c ),
Personality( "Standard Least Squares" ),
Emphasis( "Minimal Report" ),
Run(),
Where( data:b == "param1" & data:n == "param2" ),
);