This new capability has me breaking out my thesaurus, scrambling for new superlatives.This new capability has me breaking out my thesaurus, scrambling for new superlatives.This new capability has me breaking out my thesaurus, scrambling for new superlatives.This new capability has me breaking out my thesaurus, scrambling for new superlatives.이 새로운 기능으로 인해 동의어 사전을 깨고 새로운 최상급을 찾기 위해 애쓰고 있습니다. 예, 시리즈를 끝내기 위해 너무 많은…
보통 , 이와 같은 시리즈를 작성할 때 나는 출판을 시작하기 전에 시작부터 끝까지 전체를 씁니다. 보통, 다음 항목을 작성하는 동안 독자를 매달리게 하고 싶지 않습니다. 보통, 나는 기한 내에 글을 쓰는 스트레스를 피하려고 노력한다. 아아, 이 항목에는 정상적인 것이 없습니다. 이 항목은 다른 항목이 게시될 때 작성되고 있습니다. 나는 일반적으로 이와 같은 것을 시도하지 않지만 여기서 공유할 정보는 토론의 핵심일 뿐만 아니라 앞으로 이 주제에 접근하는 방법을 완전히 변경합니다. 새로 고침으로 다른 항목에 대한 링크는 다음과 같습니다.
그리고 이제 지난 몇 주 동안 제가 방금 끝낸 거의 모든 이야기를 귀담아 듣도록 하겠습니다.
방법에는 사이클이 있습니다. JMP 작업을 해제합니다. 일반적으로 제품 관리 팀은 출시일 약 2~3개월 전에는 일반 대중과 새 릴리스에 대한 논의를 시작하지 않습니다. 따라서 JMP 16이 출시되기 6개월 전인 이 새로운 기능에 대해 글을 쓸 수 있는 허가를 받았을 때 제가 얼마나 충격을 받았을지 상상이 가실 것입니다.
개발자들이 JMP 직원에게 이 새로운 기능을 시연하는 회의에 참석하면서 저는 이 기능에 대한 흥분과 이를 고객에게 보여주고 싶다는 열망을 공유했습니다. 그날 늦게 그것에 관한 기사를 써 달라는 요청을 받았을 때 내가 얼마나 놀랐을지 상상해 보십시오. 그렇다면 내 마음을 설레게 하는 이 마법의 기능은 무엇일까요? 내가 동의어 사전을 깨고 새로운 최상급을 찾기 위해 애쓰는 이유는 무엇입니까? 사람들에게 JMP 스크립팅의 세계를 소개하는 방식을 완전히 바꾸어 놓을 새 기능은 무엇입니까? 음… 그리고 여기 나와 함께 있어… 일지 .
다가올 것들의 미리보기
JMP 16은 현재 로그라고 하는 새로운 로그를 도입할 예정입니다. 향상된 로그 . 하지만 그것은 스마트폰이 전화를 걸기 위한 것이라고 말하는 것과 약간 비슷합니다(그들이 그렇게 한다는 것을 기억하십니까?). 향상된 로그는 JMP와 상호 작용할 때 사용자가 수행하는 작업을 상당히 추적하며(여기에 멋진 부분이 있습니다.) 마우스 클릭으로 JSL을 생성합니다. ! 잠시 동안 가라 앉히십시오.
이것은 소스 스크립트와 빨간색 삼각형 스크립트 저장 옵션을 훨씬 뛰어 넘습니다. 그들은 바다를 끓이려는 것이 아니므로 일부 항목은 첫 번째 릴리스에서 캡처되지 않을 것입니다. 데이터 가져오기 및 데이터 테이블 조작은 JMP 16의 주요 목표입니다. 그러나 그것은 문 밖에서 바로 많은 근거를 다룹니다. 이것이 이미 무엇을 할 수 있는지 보여드리겠습니다(6개월의 개발 기간이 남아 있음).
향상된 로그 켜기
우선, Enhanced Log를 켜는 것은 JMP의 기본 설정으로 이동하는 것만큼 쉽습니다(아래 JMP > 기본 설정 맥OS용; 파일 > 기본 설정 Windows의 경우) 로그 스타일 드롭다운을 "향상됨"으로 변경합니다. 딸깍 하는 소리 좋아요 그리고 당신은 경주를 떠납니다! (아래의 스크린샷은 초기 릴리스의 것이며 로그에는 이제 목록 맨 아래에 고유한 메뉴 항목이 있습니다.)
이제 로그를 엽니다( 창 > 로그 맥OS용; 보기 > 로그 윈도우용). 평소와는 조금 다른 모습을 보게 될 것입니다. 다른 지역을 볼 수 있도록 스크린샷에서 광산을 지웠습니다. 상단 부분은 작업이 기록되는 곳으로 잠시 후에 다룰 것입니다. 맨 아래 부분은 JMP에서 생성한 JSL이 나타나는 곳입니다.

그것이 우리의 이야기에 어떻게 들어맞는가
모든 것을 체계적으로 유지하기 위해 모든 것을 JMP 프로젝트에 넣었습니다. Enhanced Log가 프로젝트에 들어가면 자동으로 맨 아래에 배치되고 나란히 구성됩니다(왼쪽은 Enhanced Log, 오른쪽은 JSL 출력).

이것은 내가 일을 어떻게 했는지에 대한 일대일 토론을 의미하지 않기 때문에 몇 가지 단계를 거쳐 몇 가지 사항을 지적하겠습니다. 하지만 이전에 사용했던 것과 동일한 예를 사용하겠습니다. 내 세 번째 게시물 . 따라해 본 적이 있다면 되돌아보고 현재 얼마나 쉬운지 비교해 보십시오.
먼저 일부 데이터를 JMP로 가져오겠습니다. Big Class Families.jmp를 열었습니다. 고급 로그 영역에는 작업이 사용자 클릭(유형 아래), 무엇을 했는지, JMP에서 작업이 어디에서 왔는지(오리진 아래), 무슨 일이 일어났는지 보여주는 항목이 있습니다. 멋진 타임 스탬프도 있습니다. 이제 JSL 영역을 살펴보십시오. 사용할 준비가 된 Open(…) 명령(제대로 주석 처리됨!)이 있습니다! 스크립팅 인덱스를 통해 다이빙할 필요가 없습니다!

분석을 계속하겠습니다. 키, 몸무게, 성별, 연령 열로 분포를 만들었습니다. 향상된 로그에는 사용자 명령이 데이터 테이블로 시작되어 배포 플랫폼 창이 생성되었음을 보여주는 항목이 있습니다. JSL 영역에는 배포 플랫폼을 재현하기 위한 적절한 형식의(그리고 주석 처리된!!!) 항목이 있습니다.

이제 몸무게 대 키의 X x Fit Y를 해봅시다. 같은 이야기 – Enhanced Log 및 JSL 영역에 항목이 있습니다.

그러나 일반적으로 Fit Y by X를 여는 이유는 그렇지 않습니까? 라인 피팅 또는 가설 테스트를 수행하려고 합니다. 그렇게 하면 향상된 로그 또는 새로운 JSL 코드에 대한 업데이트가 없습니다.

장애물에 부딪힌 것 같습니다. 하지만 기다려! 우리는 그렇지 않습니까? 우리는 따르지 않았습니다 JMP 작업 흐름 아직! 따라서 (워크플로를 따라) 질문은 다음과 같습니다. 선을 맞춰서 Fit Y by X에 대한 변경 사항을 캡처하기 위해 향상된 로그를 얻는 방법은 무엇입니까? 언제나 그렇듯이 답변 버튼을 누르면 답을 찾을 수 있습니다! 나를 그리워하는 사람들을 위해 첫 번째 블로그 시리즈 , 나는 작은 빨간색 삼각형을 응답 버튼이라고 부릅니다.) JSL 블로그 시리즈, 우리는 갈거야 다음에 스크립트 저장… 새 항목을 찾을 수 있는 작은 빨간색 삼각형 메뉴의 일부, 기록하려면 .

클릭하면 적합선 옵션이 설정된 상태에서 Y x X 적합에 대한 향상된 로그에 새 항목 쌍이 추가됩니다.
그래서. 괴물. 시원한.
참고: 글루 연산자(;)도 처리하고 있다는 사실을 눈치채셨나요?

이제 마지막 비트입니다. 확장 로그에서 JSL을 어떻게 가져오나요? 자, 방금 질문을 했으므로 Enhanced Log에 대한 답변 버튼을 누르겠습니다. 그리고 거기에서 우리는 스크립트 저장 > 스크립트 창으로 옵션.

그리고 끝났습니다! 여분의 Bivariate 호출(줄이 없는 첫 번째 호출)을 삭제하고 두 개의 보고서 창을 New Window() 함수에 넣을 수 있지만 여기서 요점은 완료된 코드를 작성하지 않고 스크립트. IT는 심지어 당신을 위해 댓글을 달았습니다!!! (나는 지금 완전히 괴짜입니다…잠시만요…숨을 쉴 필요가 있습니다.)

여기 완성된 코드가 있습니다(참고: JMP의 다른 버전에서 작동하도록 파일 경로를 변경했습니다).
// Open Data Table: Big Class Families.jmp
Open( "$SAMPLE_DATA/Big Class Families.jmp" );
// Launch platform: Distribution
Distribution(
Continuous Distribution( Column( :height ) ),
Continuous Distribution( Column( :weight ) ),
Nominal Distribution( Column( :sex ) ),
Nominal Distribution( Column( :age ) )
);
// Launch platform: Bivariate
Bivariate( Y( :height ), X( :weight ) );
Bivariate( Y( :height ), X( :weight ), Fit Line( {Line Color( {230, 159, 0} )} ) )
여기에서 어디로 가야할지… 다시
여기에서 우리는 blog 시리즈의 끝에 있다. ..다시. 이번에는 진짜라고 약속합니다. 그래서, 이 항목에 대한 당신의 숙제는 무엇입니까? 글쎄, 당신은 그냥 앉아서 Enhanced Log가 도착하기를 기다리고 싶을 수도 있습니다. 유혹적이라는 건 알지만 이전 에피소드에서 살펴본 내용을 연습하는 것이 좋습니다. 이것은 중요한 내용이며 배운 내용을 사용해야 합니다. 행운과 행복한 코딩!
이 멋진 새 기능에 대한 흥미진진하고 재미있는 블로그 게시물에 대해 Mike에게 감사드립니다! 저는 JMP 16의 개발 빌드에서 당신이 한 일을 정확히 수행하기 위해 그것을 사용하는 것을 좋아했습니다. 코딩에 시간을 소비하지 않고도 제 작업을 복제하기 위해 작업 스크립트로 최소 90%를 얻었습니다. 이전에 JSL을 작성했거나 대화형 작업을 로그에 생성된 작업 코드 예제와 비교하여 학습을 시작하고자 하는 고객이 좋아할 놀라운 시간 절약 기능입니다.