온라인 코스에서 자세히 알아보세요
영상, 연습문제 및 퀴즈.
원하는 순서대로 수업을 선택하고 수강하세요.
JMP 스크립팅 언어 소개

이 데모에서는 미리 작성된 스크립트를 사용하여 사용자 정의 보고서를 만드는 방법을 살펴보겠습니다. 따라서 과정 일지의 섹션에는 질소 산화물 데이터에 대한 NOx 데이터라는 스크립트가 있습니다. 그리고 여섯 가지 다른 준비가 있습니다. 그리고 여섯 가지 다른 준비의 각 반복에 대한 질소 산화물 농도의 로그를 기록했습니다. 따라서 스크립트는 미리 작성되어 있습니다. 그리고 과정 일지에서는 사용자 정의 NOx 보고서 스크립트라고 합니다. 그리고 이것을 조각조각 실행해 보겠습니다. 하지만 실제로는 스크립트의 각 부분이 무엇을 하는지 살펴보기 전에 최종 결과를 볼 수 있도록 전체를 실행하고 싶습니다. 그래서 전체를 실행해 보겠습니다. 이 스크립트는 그래프 빌더에서 사용되는 요약 표를 만듭니다. 원시 데이터만 사용하지 않도록 살펴보겠습니다. 하지만 사용자 정의 보고서는 탭으로 구분된 보고서입니다. %CV라는 첫 번째 탭에는 라이브 그래프 빌더 플랫폼이 있습니다. 이 빨간색 삼각형은 그래프 빌더에서 볼 수 있는 일반적인 빨간색 삼각형 메뉴입니다. 그리고 각 레벨에 대한 계산된 변동 계수 또는 %CV가 있습니다. 그리고 여기에는 스크립트에서 만든 사용자 지정 빨간색 삼각형 메뉴가 있어서 보고서의 숫자 열에 필요한 소수 자릿수를 지정할 수 있습니다. 그리고 배경 정보라는 두 번째 탭에는 각 레벨의 원시 데이터, 변동 계수를 계산하는 데 사용되는 평균 및 표준 편차, 계산된 값이 있습니다. 그리고 빨간색 삼각형 메뉴에서 선택을 했다면(실제로는 그냥 하죠). %CV의 앞 탭에서 빨간색 삼각형으로 가서 소수 두 개를 선택합니다. 스크립트는 이 보고서의 모든 숫자 열 상자를 살펴봅니다. 그럼 어떻게 구성되었는지 살펴보겠습니다. 스크립트가 하는 첫 번째 작업은 질소 산화물의 로그와 함께 원래 데이터 테이블로 단방향 메시지를 보내는 것입니다. Y 역할의 질소 산화물 농도 로그와 X 역할의 준비 로그입니다. 변동 계수를 계산하는 데 필요한 것은 평균 및 표준 편차 보고서 테이블입니다. 그래서 켜 달라고 요청합니다. JMP에서 변동 계수를 직접 계산하지 않고도 구할 수 있는 방법이 많다는 점을 언급하겠습니다. 하지만 다시 한번 값을 행렬로 구하고 행렬 계산을 사용하는 몇 가지 아이디어를 보여드리겠습니다. 그래서 줄을 실행해 보겠습니다. 요청한 표가 있는 단방향 출력입니다. 이제 줄에서 보고서 계층을 가져오는 다른 구문을 볼 수 있습니다. 이 구문을 사용하는 이점은 보고서에 있는 모든 내용이 필요하지 않은 경우 이 경우 원하는 표의 개요 항목, 즉 평균과 표준 편차를 간단히 요청할 수 있다는 것입니다. 그러면 표시 상자에 액세스할 때 코드를 약간 간소화할 수 있습니다. 그리고 변수 ob에 저장합니다. 여기서는 개요 상자의 약어를 사용하는 것이 관례입니다. 마우스를 올렸을 때 이미 값을 저장하고 있는 것을 보셨을 겁니다. 전체 스크립트를 이미 실행했기 때문입니다. 하지만 다시 할당할 것입니다. 이제 줄과 줄은 레벨의 열을 검색한 다음 평균과 표준 편차의 열을 검색합니다. 수준의 경우 이 열의 값을 전혀 조작할 필요가 없습니다.추정 표의 사용자 지정 보고서와 배경 정보인 모든 결과 표에 이를 원할 뿐입니다.따라서 복사본만 필요한 표시 상자에서 할 수 있는 멋진 작업은 "복제 상자"라는 메시지를 보내는 것입니다.그러면 단방향 창을 닫은 후에도 이 표시 상자의 복제본이 Levels에 저장됩니다.따라서 ob 변수에 문자열 열 상자를 첨자로 지정합니다.여기서도 열 머리글을 사용할 수 있으며 그렇게 해도 해가 되지는 않습니다.하지만 이 표시 상자 하나만 저장되었거나 ob에 저장된 참조가 있으므로 인덱스 값과 함께 간단한 구문을 사용하기가 쉽습니다.따라서 줄을 실행합니다.그러면 이제 Levels가 표시 상자를 저장하고 특히 로그에서 볼 수 있는 문자열 열 상자를 저장합니다.줄 계산에서 평균과 표준 편차를 사용해야 합니다.따라서 단순히 복사본을 가질 수는 없습니다. 값을 행렬로 가져와 변수 mMeans 또는 평균 행렬에 저장해야 합니다.로그에서 볼 수 있고, mMeans 위에 마우스를 올리면 해당 값이 무엇인지 볼 수 있습니다.표준 편차에 대해서도 마찬가지입니다.그래서 그것을 실행하고, 다시 한 번, 여러분은 이것을 조금 더 작게 만들 것입니다.로그에서 해당 값을 볼 수 있습니다.Line은 mCVs라는 변수를 생성하고, 그것은 다시 그 변동 계수에 대한 계산일 뿐입니다.그것은 표준 편차를 평균으로 나눈 다음 그것을 곱하는 변동성의 상대적 척도입니다.그래서 Line을 실행합니다.이제 변동 계수가 있습니다.그리고 이 시점에서는 플랫폼에서 다른 것은 필요하지 않습니다.그래서 메시지를 ow로 보낼 것입니다.이것은 분석 계층 개체 참조로 전송됩니다.그 창을 닫으라는 것입니다.그리고 스크립트가 더 이상 필요 없는 분석이나 데이터 테이블이든 창을 닫을 수 있는 경우 스크립트에서 해당 창을 닫도록 하는 것이 좋습니다. 더 이상 열 필요가 없다면 메모리를 차지할 필요도 없습니다.다음 단계에서는 사용자 정의 보고서에서 그래프 빌더를 사용하고 싶었습니다.그리고 그래프 빌더는 현재 요약 통계 중 하나로 변동 계수를 계산하지 않습니다.따라서 해결 방법은 요약 표 명령에 내장된 변동 계수로 이 요약 표를 만든 다음 그래프 빌더의 기준으로 사용하는 것이었습니다.요약 표를 가져오기 전에 전체 스크립트를 실행했을 때 표시된 요약 표를 닫고 싶습니다.그리고 닫으면 다른 창이 열려 있다는 경고가 표시되므로 모두 닫으라고 말할 것입니다.그러면 사용자 정의 보고서에서 그래프 빌더가 즉시 제거되었습니다.따라서 이 시점에서는 이 예제 사용자 정의 보고서를 열어 둘 이유가 없습니다.스크립트를 계속 진행하면서 다시 만들 것입니다.그러므로 이것도 닫겠습니다.따라서 줄은 "요약"을 메시지로 원래 데이터 표에 보내고, 여기서 준비별로 그룹화합니다. 그리고 통계는 변동 계수가 될 것입니다.그러니 줄을 실행하겠습니다.이제 사용자 정의 보고서를 구성하는 데 필요한 모든 것이 있습니다.그러니 새 창을 사용합니다.그리고 여기서 생성된 표시 상자를 nw 변수에 저장하여 통신할 수 있도록 하겠습니다.새 창에 사용자 정의 보고서라는 제목을 지정한 다음 해당 탭을 스크립팅하려고 합니다.그러니 탭 상자를 지정합니다.그리고 탭의 수는 제공하는 탭 페이지 상자 인수의 수에 따라 결정됩니다.이 경우를 사용하겠습니다.탭 페이지 상자의 첫 번째 인수는 제목입니다.그리고 첫 번째 인수는 %CV라고 합니다.그리고 H 목록 상자는 그래프 빌더를 포함하는 가로 목록 상자를 제공합니다.그리고 실제로 라이브로 시작합니다.이 창에서 라이브 플랫폼을 얻는 방법은 표시 상자에서 해당 시작이 발생하도록 하는 것입니다.이 구문은 그래프 빌더를 대화형으로 만들고 요약 테이블로 보내는 데서 얻었을 수 있습니다. 그리고 H 목록 상자에 줄을 세울 다른 것은 Estimates라고 하는 개요 상자로, Levels에 저장된 문자열 열 상자가 들어 있는 표 상자가 있습니다. 그리고 제 스크립트는 %CV 값이 있는 숫자 열 상자를 만듭니다. 두 번째 탭 페이지 상자는 개요 상자를 사용하여 모든 결과로 레이블을 지정한 배경 정보입니다. 그리고 개요 상자 내에서 표 상자는 4개의 숫자 열 상자를 수평으로 줄 세웁니다. 그래서 저는 이것을 더 높게 만들어서 원하는 줄을 확실히 잡을 수 있도록 할 것입니다. 그리고 저는 그 부분을 실행할 것입니다. 그래서 이것은 완성되지 않았습니다. 이것은 제 사용자 정의 보고서의 시작점입니다. 그리고 저는 스크립트 창을 조금 더 좁게 만들어서 두 가지를 나란히 볼 수 있을 것 같습니다. 그래서 Graph Builder는 기본적으로 선이 없습니다. 그래서 저는 그것을 추가하고 싶은 것 중 하나입니다. 저는 그래프가 이렇게 클 필요가 없기 때문에 크기를 조정하고 싶습니다. 그리고 저는 Estimates 개요 항목에 그 빨간색 삼각형 메뉴를 추가하고 싶습니다. 스크립트에서 사용자 정의 보고서의 첫 번째 탭에 추정치의 개요 상자를 만들 때 해당 결과를 ob에 저장했습니다. 그리고 그것은 제가 일방향 플랫폼에서 평균과 표준 편차를 얻을 때 이전에 사용했던 변수 이름이었습니다. 그래서 여기서도 저는 단순히 약어를 사용하고 이전 값이 필요하지 않았기 때문에 해당 값을 덮어썼습니다. 따라서 지금 스크립트의 나머지 부분을 보기 위해 아래로 스크롤하면 ob에 저장된 표시 상자인 추정치 개요 상자에 "메뉴 스크립트 설정" 메시지를 보냅니다. 그리고 메뉴 스크립트 설정은 해당 메뉴 항목이 선택될 때 실행되는 표현식과 번갈아 나타나는 메뉴 항목 목록을 인수로 사용합니다. 따라서 표현식은 보고서의 숫자 열 상자를 반복하고 형식을 설정합니다. 표시할 수 있는 최대 문자 수의 필드 너비와 소수 자릿수가 있습니다. 따라서 선택한 빨간색 삼각형 메뉴 옵션에 따라 이러한 표현식 중 어떤 표현식이 실행될지 결정됩니다. 그래서 저는 줄을 실행할 것입니다 그리고 사용자 정의 보고서에서, 이제 빨간색 삼각형 메뉴가 있는 것을 볼 수 있습니다. 줄은 그래프 빌더에서 프레임 상자의 크기를 변경할 것입니다. 그리고 이것은 제가 가면-- 공개 버튼을 마우스 오른쪽 버튼으로 클릭하고 편집에서 트리 구조 표시를 선택합니다-- 아래로 스크롤할 수 있습니다. 전체 보고서를 볼 때 여기에는 우리가 우리 자신의 스크립트를 작성할 때 사용하지 않는 많은 생성자가 있습니다. 하지만 아래로 스크롤합니다. 좋아요, PictureBox가 있고, 더 아래로 스크롤하고, 그 제목이 있고, 더 아래로 스크롤합니다. 마우스를 올려 축 상자를 볼 수 있습니다. 그리고 마지막으로 FrameBox가 보이고, 그래서 제가 크기를 조정하고 싶은 것이 무엇인지 알 수 있습니다. 플랫폼에 익숙해지면 트리 구조를 볼 필요가 없을 수도 있습니다. 그래서 줄을 새 창에 아래 첨자로 지정하고 "프레임 크기" 메시지를 보냅니다. 픽셀 단위이고, 계속해서 줄을 실행합니다. 그러면 그래프 빌더 프레임 상자의 크기가 조정됩니다. 이제 스크립팅 인덱스를 사용하여 다른 표시 상자가 받을 수 있는 메시지 종류를 확인할 수 있습니다. 도움말 메뉴로 가서 스크립팅 인덱스를 선택하면 모든 범주에서 표시 상자로 변경하고 아래로 스크롤하여 FrameBox를 찾아 해당 상자에 보낼 수 있는 메시지를 확인할 수 있습니다. 스크립팅 인덱스를 닫겠습니다. 또 다른 작업은 AxisBox에 참조선을 추가하는 것입니다. 그리고 다시 한 번 말씀드리지만 Graph Builder의 표시 트리 구조에 익숙하지 않다면 해당 트리 구조 창을 살펴보겠습니다. 일부 플랫폼에서는 세로 축입니다. 일부 플랫폼에서는 가로 축입니다. 이 경우 가로 축입니다. 참조선을 추가하라는 메시지를 보냅니다. 여기의 인수는 참조선에 어떤 값을 지정하시겠습니까? 어떤 스타일의 선을 원하십니까? 단색을 원합니다. 색상은? 검은색을 선택합니다. 네 번째 인수는 축의 레이블입니다. 따라서 빈 문자열을 갖는 것은 레이블이 필요하지 않다는 것을 의미합니다. 사실, JMP에 이것이 네 번째 인수가 아니라 다섯 번째 인수라는 것을 알려주는 이 쉼표가 있는 한 이것을 삭제할 수 있습니다. 이 쉼표가 없다면 JMP는 축에 But이라는 레이블을 붙일 것입니다. 쉼표를 넣었기 때문에 JMP는 이것이 레이블이 아니라 선 너비라고 이해합니다. 따라서 line And를 실행하여 참조선을 그립니다. 그런 다음 이 스크립트의 맨 마지막 부분은 nw에 저장된 표시 상자에 "Save Journal"을 보내고 Custom CV Report.jrn이라고 부르는 것입니다. 이제 스크립트는 사용자가 상호 작용할 수 있는 라이브 Graph Builder 창과 빨간색 삼각형 메뉴가 있는 이 보고서를 생성하여 여기서 끝날 수 있습니다. 사실, 이번에는 소수점 한 자리를 선택하겠습니다. 어떤 경우에는 해당 보고서를 저널로 저장하고 싶을 수도 있습니다. 그러면 빨간색 삼각형 메뉴가 사라집니다. 그리고 Graph Builder는 더 이상 라이브 보고서가 아닙니다. 하지만 여기서 마지막 옵션은 "저널 저장"이라는 메시지와 함께 사용자 정의 보고서를 저널로 저장하는 방법을 보여줍니다. 따라서 이 스크립트에서 분석 계층을 시작했습니다. 보고서 계층 객체를 검색한 다음 복사본이나 조작을 위한 행렬로 필요한 보고서 계층의 요소를 가져왔습니다. 사용하려는 플랫폼에 대한 별도의 데이터 테이블을 만든 다음 새 창을 사용하여 사용자 정의 보고서를 만들었습니다. 이 경우 탭, 가로 목록 상자, 개요 상자를 표시 상자로 사용하고 수준에 저장된 문자열 열 상자와 다양한 숫자 열 상자도 사용했습니다. 그런 다음 해당 사용자 정의 보고서의 구성 요소에 메시지를 보내는 방법을 살펴보았습니다.