안녕하세요, 저는 Colleen McKendry이고 JMP의 수석 통계 작가입니다. 즉, 소프트웨어의 여러 통계 플랫폼에 대한 문서를 작성한다는 뜻입니다. JMP에서 일하기 시작하기 전인 약 9년 전에는 JMP를 전혀 열어본 적이 없었습니다. 제 경력 내내 JMP를 배우면서 글을 쓸 만큼 충분히 이해하려고 노력했습니다. JMP를 배우면서 정말 유용하다고 생각했던 것 중 하나는 JMP 스크립팅 인덱스였습니다. 당시에는 JMP 스크립팅 인덱스가 조금 부족하다고 느꼈고, 잠재력이 크다고 생각했지만 일부 정보가 완벽하지 않은 등의 문제가 있었습니다.
몇 년 전, JMP 16 버전부터 동료 마이클 크로티와 저는 JMP 스크립팅 인덱스의 통계적 측면을 개선하는 프로젝트를 시작했습니다. 이 프로젝트는 기본적으로 정보가 완전하고, 견고하며, 최대한 유용하도록 하는 것이었습니다.
최근 저희는 검토 중이던 모든 통계 플랫폼에 대한 첫 번째 전체 검토를 마쳤습니다. 스크립팅 인덱스가 현재 매우 좋은 위치에 있다고 생각합니다. 그래서 이 프레젠테이션을 통해 스크립팅 인덱스에 대해 더 자세히 알려드릴 좋은 기회라고 생각했습니다. 스크립팅 인덱스에 대해 처음 들어보시는 분이든, 고급 사용자이든, 어떤 단계에 계시든 이 발표를 통해 조금이라도 도움이 되셨으면 좋겠습니다.
스크립팅 인덱스가 무엇인지 모르시는 분들을 위해 설명드리자면, 스크립팅 인덱스는 JSL(JMP 스크립팅 언어)을 배우는 데 중요한 도구입니다. JSL은 JMP의 네이티브 코딩 언어입니다. 스크립트 창을 열고 무언가를 입력하기 시작하면 JSL로 코딩하는 것입니다. 스크립팅 인덱스는 JSL 함수, 객체, 그리고 표시 상자에 대한 정보를 모아놓은 곳으로, 곧 자세히 설명하겠습니다. 각 항목에는 간략한 설명과 인덱스 내에서 바로 실행할 수 있는 예제 스크립트가 포함되어 있습니다.
또한 사용자 정의 가능한 필터링 옵션을 제공하는 검색 기능이 있으며, 이 중 일부는 최근 고객 경험 개선을 위해 업데이트되었습니다.JMP 스크립팅 인덱스는 어디에서 찾을 수 있습니까?제품에는 스크립팅 인덱스에 액세스하는 다양한 방법이 있습니다.첫 번째는 도움말 메뉴를 통하는 것입니다.도움말 메뉴를 클릭하면 실제 스크립팅 인덱스 옵션이 표시되므로 이를 사용하여 열거나 실제로 스크립트에서 액세스하는 옵션이 있습니다.스크립트 창에서 코딩하는 도중 특정 함수나 객체에 대한 자세한 정보가 필요한 경우 Alt 키를 누르고 해당 함수나 객체를 두 번 클릭하면 스크립팅 인덱스가 열리고 관심 있는 항목이 채워집니다.
스크립트에서도 마찬가지로 함수나 객체를 마우스 오른쪽 버튼으로 클릭하면 "도움말 스크립팅 인덱스" 옵션이 나타나는데, 이 옵션도 같은 방식으로 작동합니다. 최근에는 jsl.jmp.com에서 스크립팅 인덱스 온라인 버전을 이용할 수 있게 되었습니다. 스크립팅 인덱스 정보를 온라인으로 제공하는 것은 이번이 처음입니다. 제품 내 인덱스와 일대일로 제공됩니다. 사용자가 스크립팅 인덱스의 정보에 접근하고, 공유하고, 사용할 수 있는 또 다른 방식입니다.
자세히 살펴보겠습니다. 스크립팅 인덱스를 열면 이렇게 보입니다. 앞으로 설명할 스크립팅 인덱스의 여러 영역에 상자를 표시했습니다. 왼쪽 상단 모서리부터 시작하겠습니다. 여기에는 여러 가지 탐색 유형 컨트롤이 있습니다. 먼저, 여기에 작은 토글 버튼이 있는데, 스크립팅 인덱스의 레이아웃을 변경하려는 경우 보기를 변경합니다. 그런 다음 탐색 버튼이 있는데, 뒤로 및 앞으로입니다. 어떤 유형의 검색을 하거나 주변을 클릭하는 경우 이 버튼을 사용하여 무언가를 다시 입력하지 않고도 앞뒤로 이동할 수 있습니다.
다음으로, 모든 범주의 드롭다운 목록이 있는데, 왼쪽 선택 목록에는 모든 범주가 있습니다. 함수, 객체, Python, 표시 상자가 있는데, 이 중 하나를 선택하면 이 목록에 있는 함수나 객체만 표시됩니다. 함수 범주에는 JMP에서 제공하는 기본 제공 함수가 있습니다. 이 함수들은 코드 기반이므로 함수의 결과는 UI가 아닌 로그에서 확인할 수 있습니다. 이러한 함수의 예로는 수치 함수, 행렬 함수, 문자 함수, 모든 유형의 확률 함수가 있습니다. 이러한 함수들이 모두 여기에 포함됩니다.
반면 객체는 UI 기반입니다. 객체는 JMP의 동적 부분으로, 메시지를 통해 특정 작업을 수행하라는 명령을 받을 수 있습니다. 데이터 테이블, 데이터 열, 플랫폼, 결과 창 등 UI에 표시되는 것들이며, 이 범주의 항목은 이러한 항목과 관련이 있습니다. 데이터 열 변경, 결과 창에 옵션 추가 등이 여기에 해당합니다.
Python 카테고리에는 Python 통합과 관련된 기능이 포함되어 있지만, 이 강연에서는 전혀 다루지 않겠습니다. 마지막으로, 표시 상자가 있습니다. 이는 JMP에서 보고서나 새 창을 만드는 데 사용되는 다양한 유형의 사각형 상자입니다. 보고서에서 이러한 여러 표시 상자 간의 관계는 표시 트리로 표현됩니다. 이 카테고리의 모든 항목은 표시 상자 채우기, 시작 창과 같은 옵션 추가, 라디오 상자 옵션, 체크박스 등과 관련이 있습니다.
다음으로, 두 개의 선택 목록에 대해 살펴보겠습니다. 왼쪽 목록에는 범주 이름이, 오른쪽 목록에는 항목 이름이 있습니다. 이 목록들은 계층적으로 서로 관련되어 있으므로 오른쪽 항목들은 왼쪽에서 선택된 범주 이름 안에 포함됩니다. 바로 이 이미지에서 왼쪽에 Control Chart Builder가 선택되어 있는 것을 볼 수 있습니다. 오른쪽의 모든 항목 이름은 Control Chart Builder 개체와 관련되어 있습니다. 이 오른쪽 목록에서 선택하는 항목 이름이 스크립팅 인덱스의 나머지 정보를 채웁니다.
이제 살펴보겠습니다. 스크립팅 인덱스 창의 나머지 부분에는 찾고 있는 유용한 정보 등 모든 정보가 포함되어 있습니다. 맨 위에 항목 이름이 있고, 그 다음에 구문 또는 프로토타입이 있습니다. 이는 해당 항목에 포함된 모든 옵션을 포함하여 항목을 코딩하는 기본적인 코드 구조일 뿐입니다.
또한 기본적으로 항목의 기능, 때로는 어떤 플랫폼에서 작동하는지 알려주는 간단한 설명이 있습니다. 또한, 이미 예제가 입력된 내장 스크립트 창과 로그 창이 있습니다. 따라서 이 예제를 스크립팅 인덱스 내에서 실행하면 코드가 실행되고 로그나 UI에 출력됩니다. 이렇게 하면 직접 코딩하지 않고도 예제 코드를 볼 수 있습니다.
영어: 예제 영역에 작은 드롭다운 아이콘이 표시되면 해당 항목에 대한 여러 예제가 있음을 의미합니다.이 아이콘을 클릭하면 다양한 예제를 보고 관심 있는 다른 것이 있는지 확인할 수 있습니다.마지막으로 몇 가지 추가 도움말 옵션이 있습니다.이 참조 항목을 클릭하면 드롭다운 메뉴가 나타나고 이 예제 스크립트에서 사용되는 다른 스크립팅 인덱스 항목 목록이 표시됩니다.이 경우 변수입니다.변수는 스크립팅 인덱스의 또 다른 항목이므로 이것을 클릭하면 표시되고 스크립팅 인덱스의 변수 항목으로 이동하여 해당 항목에 대한 자세한 정보를 얻을 수 있습니다.
주제별 도움말 버튼도 있는데, 이 버튼을 클릭하면 해당 분야의 온라인 설명서로 이동합니다. 이 경우, 이 버튼을 클릭하면 Control Chart Builder 온라인 설명서로 이동합니다. 다음으로, 필터링 기능과 검색창이 있어 스크립팅 인덱스 전체에서 원하는 용어나 구문을 검색할 수 있습니다. 이 드롭다운 목록에는 검색 범위를 좁히거나 원하는 내용을 좀 더 구체적으로 찾는 몇 가지 옵션이 있습니다.
기본적으로 검색을 하면 스크립팅 인덱스에 있는 모든 항목이 검색됩니다. 모든 이름, 프로토타입, 설명, 그리고 예시가 검색됩니다. 이 설정을 변경하려면 하단 섹션에 있는 몇 가지 옵션을 이용하세요. "예제만 검색" 또는 "관심 있는 경우 카테고리 및 항목 이름만 검색"을 선택할 수 있습니다.
이 옵션의 상단 섹션은 단일 선택이므로 한 번에 하나만 선택할 수 있습니다. 이는 조건에 따라 검색 범위를 좁히는 데 도움이 됩니다. 또한, 검색 결과는 알파벳순으로 표시되는 것 외에는 순위가 매겨지거나 보고되지 않는다는 점에 유의해야 합니다.
이제 간단한 데모를 보여드리겠습니다. 여기서 나가겠습니다. JMP로 이동하세요. 앞서 말씀드렸듯이, 도움말 메뉴를 통해 스크립팅 인덱스로 이동할 수 있습니다. 예를 들어, 제가 응답 스크리닝에 대한 스크립트를 작성하고 있다고 가정해 보겠습니다. Alt 키를 누르고 응답 스크리닝을 두 번 클릭합니다. 스크립팅 인덱스가 열리고 검색 필드에 제가 두 번 클릭한 항목이 채워져 있는 것을 볼 수 있습니다. 이렇게 하면 응답 스크리닝과 관련된 모든 종류의 검색 결과가 표시되어 더 자세한 정보를 얻을 수 있습니다.
처음부터 다시 시작하려면 여기서 나가겠습니다. 제가 말씀드린 토글 버튼이 있는데, 이 버튼을 누르면 보기가 바뀝니다. 그리고 탐색 컨트롤이 있습니다. 이전에 검색이 있었기 때문에 입력하지 않고도 응답 스크리닝 결과로 돌아갈 수 있었고, 검색을 끝냈을 때로 돌아갈 수도 있었습니다.
카테고리는 다음과 같습니다. 함수, 객체, Python, 또는 표시 상자만 볼 수 있습니다. 파워포인트에서는 언급하지 않았지만, 버전 버튼도 있습니다. 항목이 추가된 JMP 버전을 기준으로 목록의 범위를 좁힐 수도 있습니다. JMP 18 이후에 추가된 항목만 보고 싶다면, 새로운 항목을 찾고 싶을 때 그렇게 할 수 있습니다.
이제 선택 목록이 생겼습니다. 왼쪽에서 해당 Control Chart Builder를 찾으면 다시 돌아가겠습니다. 자, 이제 됐죠. 오른쪽에서 보시다시피 이 모든 항목은 Control Chart Builder 개체와 관련이 있습니다. 이 항목들을 클릭하면 스크립팅 인덱스가 클릭하는 특정 항목 이름에 대한 정보로 동적으로 업데이트됩니다.
PowerPoint에서도 보여드렸던 Control Chart Builder 항목이 여기에 있고, 자동으로 채워지는 스크립트도 여기에 있습니다. 이 실행 예제를 사용하여 실행하면 Control Chart Builder 스크립트가 자동으로 실행됩니다. 한번 살펴볼 수도 있습니다. 설명과 비교하여 필요한 부분을 찾아낼 수 있는지 확인하려는 것 같습니다. 드롭다운 메뉴가 있으니 Control Chart Builder 예제가 여러 개 있다는 뜻입니다. 이 경우에는 Control Chart Builder 예제가 여러 개 있습니다.
여기로 내려가서 Rare Event Chart를 클릭하고 대신 해당 예제를 실행할 수 있습니다. 그러면 G 차트가 나옵니다. 여기에 작은 참조 항목이 있습니다. 앞서 말했듯이 이 예제 스크립트에는 다른 스크립팅 인덱스 항목이 많이 사용됩니다. 예를 들어 시그마를 지정하는 방법에 대해 자세히 알고 싶다면 여기를 클릭하면 됩니다. 시그마 항목으로 바로 가서 표준 편차를 지정하는 방법에 대해 읽을 수 있습니다. 기본값에 대해 읽고 더 많은 지식을 얻을 수 있습니다. 그런 다음 뒤로 가기 버튼을 사용하여 원래 보고 있던 예제로 돌아갈 수 있습니다. 이 TopicHelp 버튼을 클릭하면 Control Chart Builder에 대한 설명서가 로드됩니다. 최소화하세요.
다른 범주에 대한 몇 가지 예를 보여드리겠습니다. 데모 목적으로 함수만 살펴보겠습니다. 아주 간단한 예제를 몇 가지 보여드리겠습니다. 숫자형 함수의 경우, 여기서 실행할 수 있는 간단한 절댓값 함수만 있습니다. 아래쪽에 로그 출력이 있는 것을 보실 수 있습니다. [들리지 않음 00:15:41] 조금 위로 올려주세요.
또한 이 예제에서 내장된 스크립트는 완전히 편집 가능하므로 원하는 경우 들어가서 새 줄을 추가할 수 있습니다. 실행하여 결과를 얻을 수도 있습니다. 편집한 모든 내용, 추가하거나 제거한 모든 내용은 어디를 클릭하든 이 스크립트 창에 그대로 유지됩니다. 여기로 이동하거나 다른 범주 이름으로 이동할 수 있습니다. 숫자 및 절대값으로 돌아오면 그대로 유지됩니다. 이 모든 내용은 스크립팅 인덱스 창을 닫거나 편집을 시작할 때까지 그대로 유지됩니다. 이 추가 버튼이 나타났을 수도 있습니다. 이 버튼을 클릭하면 예제가 기본값으로 재설정되어 편집한 모든 내용이 제거됩니다.
이제 Display Boxes 예제를 살펴보겠습니다. 앞서 말씀드렸듯이 JMP 창을 채우거나 기존 JMP 창에 새 항목을 추가하는 방법에 대한 것입니다. 체크박스가 있는 새 창을 만드는 기본적인 예제를 보여드리겠습니다. 여기에서 확인할 수 있습니다. 기존 창에 항목을 추가할 수도 있습니다. 이것은 프레임 상자입니다. 기본적으로 프레임 상자는 JMP 창의 큰 사각형입니다. 여기 이 스크립트에서 이변량 스크립트인 첫 번째 부분을 실행할 수 있습니다. 이는 일반적인 JMP 이변량 보고서입니다.
그런 다음 몇 가지 추가 코드를 사용하여 실행할 수 있으며 이변량 보고서 위에 다각형이 추가됩니다.이것은 특별히 스크립팅 인덱스와 관련이 없지만 PowerPoint에서 언급했기 때문에 표시 트리에 액세스하는 방법을 보여주고 싶었습니다.이 공개 아이콘을 마우스 오른쪽 버튼으로 클릭하고 편집, 트리 구조 표시로 이동할 수 있습니다.이것들은 기본적으로 모두 표시 상자 항목이므로 이러한 모든 항목은 스크립팅 인덱스 내에 항목이 있으며 테두리 상자가 프레임 상자와 어떻게 작동하는지, 무엇을 추가할 수 있는지, 그래프에 마커를 추가하는 방법 또는 그래프의 마커에 대한 정보를 얻는 방법 등 모든 세부 사항을 파악할 수 있습니다.나는 그것을 아주 빨리 보여주고 싶었습니다.이 모든 것을 제거하십시오.
데모에서 제가 하고 싶지 않았던 마지막 일은 검색 범위를 좁히는 데 유용할 수 있는 옵션을 보여주기 위해 몇 가지 검색만 하는 것이었습니다.모든 기본값을 켜놓고 관리도로 돌아가고 싶다고 했기 때문에 관리도를 검색하는 데 관심이 있습니다.실제로 나타나는 첫 번째 히트는 Fit Model의 어딘가에 있는 이 관리 결정 차트와 비교입니다.제가 관리도를 원했던 것은 이것이 아니었습니다.이것은 검색이 용어 자체만 찾고 있기 때문에 여기에는 관리도와 차트가 포함되지만 반드시 함께 있는 것은 아니므로 구문 포함 옵션을 사용하여 모든 검색 결과에 관리도가 구문으로, 전체가 포함되도록 할 수 있습니다.이것은 제가 관심 있는 예제가 있는지 확인하는 데 유용할 수 있습니다.이를 지우고 기본값으로 되돌릴 수 있습니다.
검색 창을 사용하는 것은 스크립팅에 대해 자세히 알고 싶은 사람이라면 꼭 알아야 할 필요는 없지만, 새로운 사용자에게는 정말 유용하다고 생각합니다. 제가 JMP를 처음 사용하는 사용자였고 분산 분석(ANOVA)을 수행하고 싶다면, JMP가 항상 표준 문헌처럼 정의되어 있지 않다는 것을 알고 있을 겁니다. 저는 JMP에서 일하고 JMP에 대해 잘 알고 있습니다. Oneway 플랫폼에서 분산 분석(ANOVA)을 찾을 수 있다는 것을 알고 있습니다. 하지만 새로운 사용자에게는 UI의 'just' 버튼만으로는 이해하기 어려울 수 있습니다.
검색창에서 ANOVA를 검색하면 첫 번째 결과에서 ANOVA 보고서가 표시되거나 숨겨지는 것을 확인할 수 있습니다. 매우 유망해 보입니다. 이 기능을 실행해 볼 수 있습니다. 이 일원 분석과 관련이 있는 것을 알 수 있습니다. 심지어 다시 실행해서 실행 창이 어떻게 보이는지 확인하고, ANOVA 분석 방법을 찾으려면 UI에서 직접 무엇을 해야 할지 파악할 수도 있습니다.
더 많은 예시가 필요하다면 아래로 계속 내려가면 됩니다. 세 번째 결과에 도달하면 이 결과가 다변량 분산 분석에 대한 것임을 알 수 있을 겁니다. 저는 그런 것에는 관심이 없습니다. 저는 단지 엄격한 ANOVA 분석만 원하기 때문에, 다른 검색 결과에 ANOVA 항목이 포함되지 않도록 범위를 좁히기 위해 '전체 단어 일치'를 사용할 수 있습니다. 이렇게 하면 해당 결과와 몇 가지 다른 결과가 제거되고, 이제 ANOVA가 다른 단어 안에 포함되어 있는지 여부가 아니라, ANOVA를 단어 자체로 검색하게 됩니다. 이 기능이 검색하는 데 유용할 수 있습니다.
기본값으로 돌아갑니다. 이제 마지막 검색 예시를 통해, 코딩에 관심이 있다고 가정해 보겠습니다. 꼭 새로운 사용자는 아니지만, 스스로 코딩하는 방법을 알고 싶어 합니다. 특히, 어떤 이유에서인지 행렬이 있고, 특이값 분해를 직접 수행하고 싶을 때, "JSL에서 어떻게 해야 할까?"라고 생각하게 됩니다.
특이값 분해(SVD)를 검색할 수 있습니다. 몇 개의 결과가 나오는 것을 볼 수 있지만, 처음 몇 개는 플랫폼 내에서 특이값 분해를 수행하는 것처럼 보이며, 꼭 사용자가 직접 코드를 작성해서 하는 것은 아닙니다. 검색창은 필터링된 카테고리에서도 작동합니다. 검색창을 변경하여 함수만 표시하도록 설정할 수 있습니다. 이제 JMP에서 JSL로 특이값 분해를 직접 수행할 수 있는 네 가지 함수를 사용할 수 있습니다. 이 네 가지 함수를 살펴보고 자신에게 가장 적합한 함수를 선택하여 SVD를 진행할 수 있습니다.
데모는 여기까지입니다. 프레젠테이션으로 잠깐 돌아가겠습니다. 전체 화면 데크입니다. 마지막으로 스크립팅 인덱스를 사용하는 제가 가장 좋아하는 몇 가지 방법을 소개하고 싶습니다. 이 기능은 고급 스크립터만을 위한 것이 아니라, 신규 사용자에게도 매우 유용하게 활용될 수 있다는 점을 다시 한번 강조하고 싶습니다. 데모에서 언급했던 첫 번째 기능은 검색 기능을 활용하는 것입니다. JMP에서 ANOVA와 Oneway를 예로 들자면, 이 기능은 검색에 매우 유용합니다.
특정 통계 기법이 어떤 플랫폼에서 사용되는지 파악하는 데 유용합니다. 관심 있는 기법이 있지만 특정 플랫폼에서 정확히 어디에 적용되는지 확실하지 않다면 스크립팅 인덱스를 사용하여 빠르게 파악할 수 있습니다. 특정 플랫폼에 대한 예제나 데이터 표를 찾을 때도 스크립팅 인덱스를 사용할 수 있습니다. 물론 기본적인 스크립팅을 배우는 데에도 유용합니다. 그 외에도 저는 지금도 스크립팅을 할 때마다 스크립팅 인덱스를 참고 자료로 활용합니다.
특히 애드인을 만들 때 유용했던 적이 있습니다. 애드인에는 사용자 지정 시작 창과 다른 대화 상자가 있었고, 기존 JMP 보고서에 여러 기능을 추가했습니다. 스크립팅 인덱스의 표시 상자 범주는 시작 창에 체크박스 같은 옵션을 추가하는 방법과 기존 JMP 보고서에 다양한 기능을 추가하는 방법을 배우는 데 매우 유용했습니다.
마지막으로, 제품을 벗어나지 않고도 기본적인 문서를 얻을 수 있는 좋은 방법이라고 생각합니다. 작업 중이라면 브라우저를 열고 문서를 검색할 필요가 없을 수도 있습니다. 이렇게 하면 제품 내에서도 도움이 될 만한 기본적인 정보를 얻을 수 있습니다. 만약 도움이 되지 않는다면 TopicHelp 버튼을 사용하여 더 자세한 정보를 얻을 수 있는 문서 페이지나 영역으로 바로 이동할 수 있습니다.
제 말은 여기까지이고, 이 영상은 녹화되었습니다. 하지만 여러분이 이 영상을 시청하는 동안에도 저는 채팅에 참여할 것입니다. 질문이 있으시면 언제든지 채팅방으로 보내주세요.