파티션 플랫폼 스크립팅파티션 플랫폼은 통계적 관점에서 올바른 방식으로 매개 변수를 분할하는 데 매우 뛰어나지 만 데이터 집합에 대한 도메인 지식에 대해서는 적절하지 않습니다. 이제는 JMP에 도메인 지식이 있다고 기대할 수는 없지만 JMP가 사용자에게 선택하는 후보자를 제공 할 수 있도록 파티션 플랫폼을 스크립팅하고 싶습니다. 그래서 도메인 지식을 감안할 때 유용 할 수 있으며 가까운 곳에 있습니다. 통계적 관점에서 분리하기위한 목록의 맨 위. 내가 고민하는 것은 사용자가 선택을 한 후에 트리를 다시 만드는 방법이다. 다양한 분할 후에 스크립트를 보는 반복을 여러 번 시도했지만 구조를 파악할 수없는 것 같습니다. 아무도 이것을 알아 냈습니까?
고맙습니다
레이
제목 : Re : 파티션 플랫폼 스크립팅백그라운드에서 'Partition'을 사용하는 UI를 작성할 수는 있지만 보고서를 숨긴다는 것은 상상할 수 있습니다. 원하는 기능과 지원하려는 워크 플로에 따라 많은 작업이 필요할 수도 있고 아닐 수도 있습니다.
일반적으로 대화 형 사용을 위해 설계된 플랫폼을 '인수'하려고 시도 할 때 일부 작업이 가능하고 그렇지 않은 작업도 있습니다.
도움이되는지 확신 할 수 없지만 '업데이트'버튼을 누르도록 사용자를 교육 할 수 있다면 이런 종류의 작업을 수행 할 수 있습니다.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Car Poll.jmp" );
par = dt << Partition(
Y( :country ),
X( :sex, :marital status, :age, :type, :size )
);
parRep = Report(par);
parRep[ListBox(4)] << prepend(ButtonBox("Update", updateScript));
updateScript =
Expr(
Beep();
setClipboard("");
par << copyScript;
treeSoFar = Parse(getClipboard());
treeSoFar;
);
'updateScript'는 JSL에서 가능한 모든 조치를 취할 수 있습니다 (여기서는 기존 보고서를 복제합니다).
제목 : Re : 파티션 플랫폼 스크립팅ian_jmp,
내 질문에 응답 해 주셔서 감사합니다. 문제는 내가해야 할 일이다.
사용자가 분할을 선택할 때마다 트리를 지우고 다시 만듭니다. 내가 뭐라구?
후보 테이블을 부수고 창을 띄우는 것입니다.
상자 및 경향 후보자 각각에 대한 그래프. 사용자가
가장 좋아하는 것을 선택합니다. 가장 좋은 점은 JMP가 나에게
피드를 선택하고 스플릿 특정 옵션을 "클릭"하십시오.
불행히도 - JMP 지원에 따르면 - 이것은 불가능합니다. 추가 중입니다.
후보자 중에서 선택하는 데 도움이되는 추가 기능
나무를 재건 할 필요가 있습니다. 내가 할 수 있다면 최선이라고 생각해.
완전히 플랫폼을 인수하므로 사용자는
split / prune, red triangle 드롭 다운 버튼.
제목 : Re : 파티션 플랫폼 스크립팅다음은 두 개의 특정 (비 최적) 분할이 만들어진 트리의 스크립트입니다.
분할(
Y (: 옥시),
X (: Age, : Weight, : Runtime, : RunPulse, : RstPulse, : MaxPulse),
유익한 정보 누락 (1),
초기 스플릿 (: 연령 45 이상, {}, {: RstPulse 60 이상}),
SendToReport (
Dispatch ({}, "Partition Report", FrameBox, {프레임 크기 (480, 56)})
파견 ({}, 후보자, 아웃 라인 박스, {Close (0)})
)
);
모든 이전 분할이 코드의 초기 분할 부분에 나열된 것 같습니다. 첫 번째 분할은 변수에 있습니다. 예를 들어 연령입니다. 그런 다음> 45 그룹의 경우 더 이상 분할되지 않습니다 (빈 대괄호). Age <45 인 경우 해당 분기는 RstPulse로 나뉩니다. 다음 분할이 : RstPulse 리프에 있으면 {RstPulse> = 60, {newvar> = value}}이됩니다.
이게 도움이 되길 바란다.
제목 : Re : 파티션 플랫폼 스크립팅도메인 지식을 사용하여 '열 잠금'을 원할 수 있습니다. 다음은 '도움말> 스크립트 색인'의 예제입니다.
Names Default To Here( 1 );
obj = Open( "$SAMPLE_DATA/Car Poll.jmp" ) <<
Partition(
Y( :country ),
X( :sex, :marital status, :age, :type, :size )
);
obj << Lock Columns( 1, :age, :size );
(obj << report)[CheckboxBox( 1 )] << Select;
Wait( .5 );
obj << Lock Columns( 0 );
Wait( .5 );
obj << Lock Columns( 1 );
일반적으로 Scripting Index는 뭔가를 알아 내야 할 필요가있을 때 시작할 수있는 좋은 곳입니다.