
이 데모에서는 데이터 열과 데이터 테이블 행을 관리하는 방법을 보여드리겠습니다. 스크립트를 사용하여 시작할 열이 하나인 새 데이터 테이블을 만들겠습니다. 과정 저널의 섹션에서 새 데이터 테이블 및 열 만들기를 클릭합니다. 새 테이블 함수를 사용하는 것을 볼 수 있습니다. 이렇게 생성된 데이터 테이블 객체 참조를 dt 변수에 저장할 것입니다. 테이블 이름은 Test Data입니다. pH라는 단일 열을 만들 것입니다. 데이터 유형은 숫자이고 모델링 유형은 연속형입니다. 그런 다음 값 인수를 사용합니다. 값 설정이라고도 할 수 있습니다. 둘 다 동의어입니다. 인덱스 연산자(중위 연산자)를 사용하여 값을 채웁니다. 따라서 1에서 7까지 1씩 증가하며 세는 것입니다. 이 값을 제공했으므로 이 데이터 테이블에는 해당 행 수가 포함됩니다. 처음에 값을 채우지 않은 경우 지정된 행 수를 추가하는 선택적 인수가 있습니다. 그리고 JMP가 해당 스크립트 메시지를 사용하여 데이터 테이블에 대한 스크립트를 작성하는지 확인할 수 있습니다.이 스크립트 메시지에는 행을 추가하는 인수가 포함됩니다.또한 고정 소수점 인수를 사용하여 소수점 이하 세 자리의 필드와 함께 형식을 지정합니다.열의 잠금 옵션을 켜서 잠금을 해제하지 않고는 수정할 수 없도록 합니다.그리고 범위 검사 인수를 사용하여 해당 열 속성을 할당합니다.그리고 여기 LELE() 구문은 열의 값이 작거나 같다는 것을 나타냅니다.마지막으로 사양 제한의 속성을 설정하는 속성 설정 인수의 예가 있습니다.사양 제한을 나타내는 옵션이 두 개 이상 있으므로 세 가지 제한(하한 사양 제한, 상한 사양 제한 및 대상) 목록이 있습니다.또한 새 열에 대한 이러한 모든 선택적 인수는 열이 생성된 후 메시지로 전송되거나 여기에서 볼 수 있듯이 새 열에 대한 인수로 전송될 수 있습니다.따라서 스크립트를 실행하려고 합니다. 그리고 아래 로그에서 테스트 데이터라는 데이터 테이블 객체의 인스턴스를 생성한 것을 볼 수 있습니다.그리고 물론, 이것은 스크립트에서 변수 dt 위에 마우스를 올려놓으면 볼 수 있는 것입니다.그리고 하나의 열과 7개의 행이 있는 데이터 테이블이 있습니다.그리고 테이블 자체에 표시된 스크립트의 모든 요소를 볼 수 있습니다.그래서 한 가지, 모델링 유형 아이콘이 연속임을 보여주기 때문에 데이터 유형이 숫자라는 것을 알 수 있습니다.그리고 연속 모델링 유형은 숫자 데이터만 사용합니다.그리고 숫자 값은 오른쪽 정렬됩니다.숫자를 문자로 처리했다면 왼쪽 정렬됩니다.열 패널의 아이콘을 살펴보면 열을 잠갔음을 나타내는 잠금 아이콘이 있습니다.작은 확인 표시는 범위 확인을 나타냅니다.그리고 별표는 고유한 기호가 없는 추가 속성의 개수를 나타냅니다.따라서 열 정보 대화 상자로 이동하는 방법은 여러 가지가 있습니다.이 별표를 클릭하면 바로 이동할 수 있습니다. 그리고 해당 속성이 사양 제한임을 알 수 있습니다. 이 드롭다운 메뉴에는 두 개 이상의 속성이 나열될 수 있습니다. 해당 속성을 선택할 수 있습니다. 그러면 열 정보로 이동합니다. 물론 열을 선택하고 열 메뉴를 사용하거나 열을 마우스 오른쪽 버튼으로 클릭하고 열 정보를 선택할 수도 있습니다. 설정 속성 인수에 지정된 값에 대한 사양 제한이 있습니다. 범위 확인도 있습니다. 그리고 다시 작거나 같음, 작거나 같음(일반 구문에서 LELE로 표시됨)과 실제 값이 있습니다. 여기서 열이 잠긴 것을 볼 수 있습니다. 데이터 유형은 숫자입니다. 모델링 유형은 연속형입니다. 형식은 고정 소수점이며, 필드 너비는 열에 표시할 수 있는 최대 문자 수와 소수점 세 자리입니다. 따라서 열 정보 대화 상자를 취소하겠습니다. 그리고 pH 열의 선택을 취소하겠습니다. 열 속성 드롭다운 메뉴에는 사용자 열 속성을 직접 설정할 수 있는 옵션이 있습니다. 대화형으로 설정하는 경우 메뉴 옵션은 기타로 표시됩니다. 그리고 속성의 이름과 값을 지정합니다.저는 저널에 Add User Column Property라는 스크립트를 가지고 있습니다.그리고 이것을 pH 열로 보냅니다.이 사용자 열은 Meter Calibration이라고 적절하게 불릴 것입니다.그리고 오늘 날짜를 월, 일, 년 문자열 형식으로 입력하고 싶습니다.그리고 여기 텍스트, 속성을 설정하는 두 번째 인수는 이 경우 Today 함수를 사용하여 이 코드 줄을 실행하는 순간인 1월 자정 이후의 초 수를 검색합니다.저는 이것을 format 함수로 감싸고 이것을 표시하려는 문자열 형식을 지정합니다.그리고 다시 말하지만, 스크립트를 작성할 때 시행착오 과정이 될 수 있습니다.제가 강조 표시한 것을 그냥 제공하면(제 생각에는 그럴 수도 있을 것 같습니다.) 그렇습니다.지정한 괄호의 개수가 올바른지 확인하고 싶었습니다.방금 강조 표시한 것을 실행해 보겠습니다.그러니 그것을 선택합니다.그리고 Ctrl+R을 누릅니다.그리고 그 문자열이 로그에 원하는 대로 정확하게 나타나는 것을 봅니다. 따라서 이 속성 설정 메시지, 속성 메시지와 함께 이 코드를 처음에는 eval 함수 없이 실행할 수 있습니다. 그렇게 하면 미터 교정 속성의 열 정보를 확인했을 때 문자 그대로 코드만 표시됩니다. 실제로는 평가되지 않습니다. 따라서 속성 설정은 두 번째 인수를 평가하지 않을 수 있으므로 eval 함수로 감싸야 합니다. 이제 속성 설정 메시지 외부에서 실행하면 -- 계속해서 실행해 보겠습니다 -- 정확히 같은 결과를 반환합니다. 처음에는 Today 함수의 형식만 사용하다가 열 속성에서 원하는 결과를 반환하지 않는다는 것을 알게 될 수 있습니다. 그러면 해당 eval 함수를 추가해야 한다는 것을 깨닫게 됩니다. 따라서 이 중 아무것도 선택하지 않고 이 스크립트를 실행하겠습니다. 로그에 표시되는 메시지는 단순히 스크립팅 가능한 메시지입니다. 즉, 스크립팅 가능한 작업을 수행했다는 의미입니다. 따라서 코드를 실행했는데 예상대로 작동하지 않는 경우가 있습니다. 그리고 이 스크립팅 가능한 메시지가 표시될 수 있습니다. 그럼, 그 경우에 무엇이 잘못되었는지 알아내려고 해야 합니다.스크립트 가능이라는 단어에서 실제로 정보를 얻을 수 없기 때문입니다.하지만 이 경우, 표로 넘어가 보겠습니다.그리고 다시, 우리는 이 별표를 클릭하여 열 정보로 들어갈 수 있습니다.그리고 이렇게 하는 것은 이제 해당 메뉴에 다른 항목이 있다는 것을 보여주기 위해서입니다.그러므로 다시, 고유한 아이콘이 없는 모든 열 속성은 이 별표 메뉴에 표시됩니다.그리고 미터 교정을 클릭하여 열 정보 대화 상자가 열릴 때 선택된 속성이 되도록 하겠습니다.그리고 오늘 함수를 사용하여 문자열로 서식을 지정한 평가 결과가 있습니다.그러므로 취소하겠습니다.그리고 사용자 열 추가 속성 스크립트 편집기 창을 사용하여 이 표를 조금 더 다루겠습니다.지금은 그렇게 넓을 필요가 없습니다.그러므로 지금 당장 데이터 표에 새 열을 메시지로 보내고 싶습니다.그리고 이 새 열의 이름을 Hydronium으로 지정하겠습니다. 그리고 수식을 만든 후에 추가할 겁니다. 물론, 열을 만드는 과정에서 수식을 추가할 수도 있죠. 그리고 코드에서 생성된 열 객체 참조를 변수에 저장할 겁니다. HYD라고 부르겠습니다. hyd는 hydronium을 뜻합니다. dt에 메시지를 보낸 결과를 할당할 겁니다. 테스트 데이터 객체 참조를 저장한 곳이기 때문이죠. 그래서 dt에 메시지를 보내고 새 열을 만든 다음 괄호와 문자열을 엽니다. 새 열에 필요한 인수는 열 이름인 Hydronium뿐입니다. 계속해서 실행해 보겠습니다. 결과를 이 변수에 저장하면 Hydronium이라는 전체 이름을 다시 입력할 필요가 없습니다. 따라서 해당 객체 참조를 저장할 필요가 없습니다. 열과 계속 통신할 수 있습니다. 하지만 이렇게 하면 이름을 줄여서 입력하는 수고를 덜 수 있습니다. 이제 앞서 언급했듯이 이 열에 수식을 추가한다고 가정해 보겠습니다. 그래서 새 줄로 넘어가겠습니다. 실수로 전체 스크립트를 다시 실행하여 두 번째 Hydronium 컬럼을 생성하지 않도록 주의하겠습니다. 첫 번째 줄을 주석으로 처리하겠습니다. 그리고 해당 변수 hyd에 메시지를 보낼 것입니다. 메시지는 set formula입니다. 그리고 이 공식은 pH의 음수 제곱으로 거듭제곱할 것입니다. 즉, raise to-- 그런 다음 괄호를 열고(-) 콜론 범위 연산자를 사용할 것입니다. pH 컬럼을 참조하고 있기 때문입니다. 글로벌 네임스페이스에 다른 변수 이름 ph가 떠다니는 경우를 대비해서요. 실제로는 권장하는 방법이지만, "이름 기본값 여기"는 사용하지 않습니다. 세미콜론을 입력하고 스크립트의 이 줄을 실행하겠습니다. 다시 한번 로그에서 스크립팅 가능한 메시지를 볼 수 있습니다. 하지만 테이블을 검사하여 해당 값이 채워졌는지 확인할 수 있습니다. 열과 행을 작업하면서 실험해 볼 만한 몇 가지 다른 사항이 있습니다. 데이터 테이블의 셀에 색상을 지정하여 특정 숫자를 초과하는 값을 플래그로 표시하고 싶다고 가정해 보겠습니다.그래서 스크립트 편집기 창에서 새 행으로 이동하겠습니다.callout이라는 변수를 만들겠습니다.그리고 dt에 저장된 데이터 테이블에서 get rows where 메시지를 수신한 결과를 할당하겠습니다.그러면 부울 비교는 pH 열의 값이 다음보다 크다는 것입니다.그러므로 해당 줄만 실행하겠습니다.rows와 get rows where가 행 번호의 열 벡터를 반환하는 것을 볼 수 있습니다.그런 다음 pH에 메시지를 보낼 것입니다.그리고 해당 열 객체 참조는 변수에 저장되지 않으므로 이름으로 참조합니다.그러므로 pH는 color cells이라는 메시지를 수신합니다.이것은 우리가 열에 보낼 수 있는 또 다른 메시지입니다.그리고 첫 번째 인수로 색상 이름을 사용할 것입니다.또한 인덱스 값도 있으며 rgb 값을 사용할 수 있습니다.이름을 문자열로 사용할 것입니다.그러므로 해당 셀을 빨간색으로 칠할 것입니다. 그리고 두 번째 인수는 어떤 셀을 색칠할 것인가입니다. 전체 열을 색칠하거나 행 번호를 제공할 수 있습니다. pH가 3보다 큰 행을 저장하는 Callout 변수를 사용하려고 합니다. 그리고 그 줄만 실행하겠습니다. 그런데 세미콜론을 넣는 것을 잊었다는 점에 유의하세요. 그래서 마지막 세미콜론은 필요하지 않습니다. 추가 인수가 올 때만 필요합니다. 지금 데이터 테이블을 살펴보면 네 개의 셀이 빨간색으로 표시되어 있습니다. 따라서 큰 데이터 테이블이 있고 일부 열에 사양 제한이 있는 경우 이 기능을 사용하면 좋을 것입니다. 예를 들어 사양을 벗어난 항목에 대한 사양 제한을 기준으로 셀에 색상을 지정하여 그래프를 보기 전에 데이터 테이블에 시각적으로 플래그를 지정할 수 있습니다. 셀에 색상을 지정할 필요는 없지만 사용할 수 있는 옵션입니다. 이 데모에서는 열이 있는 새 데이터 테이블을 만드는 방법, 해당 데이터 테이블에 열을 추가하는 방법, 그리고 열과 행을 사용하여 할 수 있는 몇 가지 작업을 조금 해보는 방법을 살펴보았습니다.
"Eval" 없이 Set Property를 실행하려고 했지만 여전히 작동합니다. (현재 JMP 16.2 사용 중)
:pH << Set Property( "Meter Calibration2", Format( Today(), "m/d/y" ) );
