Re: JSL 사전 정의된 선택/옵션으로 JMP 플랫폼을 시작하는 방법은 무엇입니까?내 생각에 가장 가까운 '즉시 사용 가능한' 기능은 Cols> 역할 사전 선택 스크립팅된 등가물 << 역할 사전 선택 .
JSL 사전 정의된 선택/옵션을 사용하여 JMP 플랫폼을 시작하는 방법은 무엇입니까?열 선택과 같이 미리 채워진 옵션을 사용하여 JMP 플랫폼을 실행하는 데 "좋은" 옵션이 있습니까? 아래에는 내 마음에 떠오른 두 가지 옵션이 있습니다.
첫 번째 옵션은 플랫폼 창을 "구축"한 다음 테이블에서 열을 선택하고 버튼을 눌러 해당 열을 추가하는 것입니다.
두 번째 옵션은 먼저 JSL 스크립트를 사용하여 플랫폼을 실행한 다음 << 분석을 다시 시작하여 "미리 채워진" 창을 여는 것입니다.
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Probe.jmp");
col_list = dt << get Column names(continuous, string);
wait(0);
//Option1
start = HP Time();
dt << Select Columns(col_list);
nw_eo = New window("Multivariate and Correlations", << Show Menu(0), << Show Toolbars(0),
Platform(dt, Multivariate())
, << Set Window Icon("ScatterplotMatrix")
);
xpath_path = "//ButtonBox[@title='Y, Columns']";
btn_ref = (nw_eo << XPath(xpath_path))[1];
btn_ref << Click(1);
dt << Clear Column Selection;
Show(HP Time()-start);
// Option2
start = HP Time();
ps = dt << Multivariate(
Y(Eval(col_list)),
Scatterplot Matrix(0),
invisible,
<< Relaunch Analysis,
<< Close Window
);
Show(HP Time()-start);
편집: 예제 스크립트에 대한 약간의 업데이트
자동화 및 스크립팅데이터 혼합 및 정리윈도우Re: JSL 사전 정의된 선택/옵션으로 JMP 플랫폼을 시작하는 방법은 무엇입니까?@David_Burnham 감사해요! 열 변경만 필요한 경우 사전 선택 역할이 매우 잘 작동하는 것 같습니다(다행히 제 경우에는 옵션을 변경할 필요가 없음).
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Probe.jmp");
col_list = dt << get Column names(continuous, string);
wait(0);
//Option3
start = HP Time();
old_roles = Associative Array();
For Each({col_name}, col_list,
old_roles[col_name] = Column(dt, col_name) << Get Role;
Column(dt, col_name) << Preselect Role("Y");
);
dt << Multivariate();
For Each({{col_name, role}}, old_roles,
If(role == "None",
role = "No Role";
);
Column(dt, col_name) << Preselect Role(role);
);
Show(HP Time()-start);