<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />我是jmp和jsl的新手,無法理解為什麼下面的代碼會產生錯誤。
dt = open("simple.csv");
xyz = New Table("xyz", invisible);
//Current Data Table(dt);
fm = Fit Model(
Y(dt:X),
Effects(dt:Y),
Personality(Standard Least Squares),
Run Model,
Invisible
);
Print(fm);
Close(xyz);
Close(dt);
這會產生以下錯誤:
Cannot run without Y Responses
Specified Column not found in data table.{1} in access or evaluation of 'List' , {dt:X}Column not Found{1} in access or evaluation of 'dt:Y' , dt:Y
In the following script, error marked by /*###*/
Fit Model(
Method( "EMS", < Emphasis( "Effect Screening", < Keep dialog open( 1 ),
Y( dt:X ),
Effects( dt:Y ),
Personality( Standard Least Squares ),
Run Model,
Invisible
)
Model Dialog[]
但是,如果我不創建 XYZ 表,或者如果我在做之前關閉它適合模型 ,或者如果我取消註釋當前數據表(dt) ,然後它的工作原理。 所以看起來如此適合模型只能在當前表上運行。 這是jmp中的錯誤還是我錯過了什麼?
從來沒聽說過。我通常只在平台腳本中使用“:X”引用。
好的謝謝!因此,鑑於平台僅在當前表上運行,有沒有必要將列稱為“dt:X”而不僅僅是“:X”?
平台通常適用於當前數據表。但是,通過使用Send運算符(<<)明確說明平台調用應應用於哪個表,可以使腳本更加健壯:
dt = open(“simple.csv”);
xyz =新表(“xyz”,不可見);
//當前數據表(dt);
fm = dt << 適合模型(
Y(DT:X),
影響(DT:Y)
人格(標準最小二乘法),
運行模型,
無形
);