스피커 | 성적 증명서 |
| 미아 스티븐스 | JMP Discovery Summit에 오신 것을 환영합니다. 저는 JMP 제품 관리자인 Mia Stephens입니다. 그리고 저는 시스템 엔지니어인 Jordan Hiller와 합류했습니다. 그리고 오늘은 데이터 큐레이션 워크플로우 자동화에 대해 이야기하겠습니다. |
| 그리고 이것은 참고용으로만 발췌한 것입니다. 나는 그것에 대해 이야기하지 않을 것입니다. |
| 그리고 우리는 이 이야기를 두 부분으로 나눌 것입니다. 먼저 분석 워크플로우에 대해 이야기하겠습니다. |
| 데이터 생성, 즉 데이터 큐레이션의 의미에 대해 이야기해 보세요. 그리고 데이터에서 잠재적인 데이터 품질 문제를 식별하는 방법을 살펴보겠습니다. |
| 그런 다음 저는 이를 조던에게 넘겨주고 조던은 재현성의 필요성에 대해 이야기할 것입니다. |
| 그는 데이터 선별에 대한 치트 시트를 우리와 공유하고 JMP에서 데이터를 선별하는 방법을 보여줄 것입니다. |
| 활동 기록기와 강화된 로그. |
| 이제 분석 워크플로우에 대해 이야기해 보겠습니다. |
| 모든 것은 우리가 해결하려는 비즈니스 문제가 있는 것에서 시작됩니다. |
| 물론 데이터를 컴파일해야 하며 다양한 소스에서 데이터를 컴파일하여 JMP로 가져올 수 있습니다. |
| 그리고 결국 우리는 결과를 공유하고, 우리가 발견한 것을 다른 사람들과 소통할 수 있어야 합니다. 때때로 이것은 일회성 프로젝트일 수도 있습니다. |
| 하지만 종종 반복하려는 분석이 있습니다. 따라서 이 강연에서 다루는 핵심 질문은 '결과를 쉽게 재현할 수 있습니까?'입니다. |
| 다른 사람들이 귀하의 결과를 재현할 수 있습니까? 또는 새 데이터가 있거나 업데이트된 데이터가 있는 경우 분석, 특히 이러한 새 데이터에 대한 데이터 큐레이션 단계를 쉽게 반복할 수 있습니까? 이것이 바로 우리가 이 강연에서 다루고자 하는 내용입니다. |
| 그런데 데이터 큐레이션이란 정확히 무엇인가요? |
| 그러면 우리는 왜 그것에 대해 염려해야 합니까? |
| 데이터 큐레이션은 데이터가 분석적 발견을 촉진하는 데 유용하도록 보장하는 것입니다. 근본적으로 우리는 우리가 해결하려는 문제를 해결할 수 있어야 합니다. |
| 이는 주로 데이터 구성, 데이터 구조 및 데이터 정리에 관한 것입니다. |
| 데이터와 관련하여 발생할 수 있는 문제에 대해 생각해 보면 문제는 네 가지 일반적인 범주로 분류되는 경향이 있습니다. |
| 형식이 잘못되었거나, 데이터가 불완전하거나, 데이터가 누락되었거나, 지저분하거나 지저분한 데이터가 있을 수 있습니다. |
| 그리고 이러한 문제에 대해 이야기하는 데 도움이 되도록 STIPS의 일부 콘텐츠를 빌려보겠습니다. STIPS에 익숙하지 않은 경우 STIPS는 무료 과정인 산업 문제 해결을 위한 통계적 사고를 제공합니다. |
| 이는 7개의 독립 모듈로 구성된 과정이며, 두 번째 모듈은 탐색적 데이터 분석입니다. |
| 탐색적 데이터 분석과 데이터 큐레이션의 반복적이고 대화형 특성으로 인해 이 모델의 마지막 강의는...이 모듈의 분석을 위한 데이터 준비라고 하므로 이 강연 전체에서 이 강의를 많이 차용하고 있습니다. |
| 이러한 문제를 각각 분석해 보겠습니다. 형식이 잘못되었습니다. 형식이 잘못되었다는 것은 무엇을 의미합니까? 이는 데이터가 잘못된 형식이거나 분석을 위한 잘못된 형식인 경우입니다. 이는 데이터 테이블 전체에 적용될 수 있습니다. 예를 들어 다음과 같은 경우가 있을 수 있습니다. |
| ...데이터가 별도의 열에 저장되어 있지만 실제로는 하나의 열에 저장된 데이터가 필요합니다. |
| 또는 별도의 데이터 테이블에 데이터가 있고 데이터 테이블을 연결하거나 업데이트하거나 조인해야 할 수도 있습니다. |
| 이는 개별 변수와 관련될 수 있습니다. 예를 들어 잘못된 모델링 유형이 있을 수 있습니다. 또는 데이터 테이블에 날짜가 있을 수 있으므로 날짜 열이 있을 수 있으며 날짜 형식이 지정되지 않을 수 있으므로 분석에서 이것이 날짜 데이터라는 것을 인식하지 못할 수도 있습니다. |
| 서식은 외관상 그럴 수도 있습니다. 예를 들어 대규모 데이터 테이블을 처리하는 경우 열이 많을 수 있습니다. |
| 이름이 있을 수 있습니다...실제로 인식할 수 없는 열 이름을 변경하고 싶을 수도 있습니다. |
| 좀 더 관리하기 쉽도록 그룹화하려는 열이 많이 있을 수 있습니다. |
| 응답 열이 데이터 테이블 맨 끝에 있을 수 있으며 이를 위로 이동할 수도 있습니다. 따라서 외관상 문제가 분석을 방해할 필요는 없지만 이러한 문제 중 일부를 해결할 수 있으면 분석이 좀 더 쉬워질 수 있습니다. |
| 불완전한 데이터는 데이터가 부족한 경우입니다. 이는 중요한 변수에 대한 데이터가 부족할 수 있습니다. 따라서 예를 들어 문제 해결에 기본이 되는 변수에 대한 데이터를 캡처하지 않았을 수도 있습니다. 변수 조합에 대한 데이터가 부족할 수도 있습니다. |
| 예를 들어 상호 작용을 추정하는 데 충분한 정보가 없을 수 있습니다. |
| 또는 관심 있는 대상 변수가 불균형하여 결함과 같은 것을 연구할 수도 있습니다. 관찰한 내용의 5%에 불과할 수도 있습니다. |
| 결함에 대한 것이며 데이터가 충분하지 않을 수 있습니다. 아시다시피 데이터의 하위 집합이 매우 작을 수도 있습니다. |
| 결함이 있는 곳. 결함의 잠재적 원인을 이해하는 데 충분한 데이터가 없을 수 있습니다. 표본 크기가 충분히 크지 않을 수도 있으므로 좋은 추정치를 얻을 만큼 데이터가 충분하지 않을 수도 있습니다. |
| 누락된 데이터는 변수 값이 누락된 경우를 말하며 이는 다양한 형태를 취할 수 있습니다. |
| 데이터가 누락되고 데이터가 누락되는 경우... 누락이 무작위로 발생하는 것이 아니므로 심각한 문제가 발생할 수 있으므로 편향된 추정이 있을 수 있습니다. |
| 데이터가 완전히 무작위로 누락된 경우 관측치가 몇 개만 누락된 경우에는 문제가 되지 않을 수 있지만, 많은 데이터가 누락된 경우에는 문제가 될 수 있습니다. |
| 더럽고 지저분한 데이터는 관찰이나 변수에 문제가 있는 경우입니다. 따라서 잘못된 값이 있을 수 있으며 값은 단순히 잘못된 것입니다. |
| 불일치가 있을 수 있습니다. 예를 들어 사람들이 다르게 입력하면 오타나 인쇄상의 오류가 발생할 수 있습니다. |
| 값이 정확하지 않을 수 있습니다. 예를 들어 측정 시스템에 문제가 있을 수 있습니다. 오류가 있을 수 있고, 오타가 있을 수 있으며, 데이터가 더 이상 사용되지 않을 수도 있습니다. |
| 쓸모 없는 데이터는 더 이상 사용되지 않는 시설이나 기계 등에 대한 데이터가 있는 경우입니다. |
| 데이터가 오래되었을 수 있으므로 2~3년 전의 데이터가 있을 수 있지만 해당 기간 어딘가에서 프로세스가 변경되었을 수 있습니다. |
| 이는 과거 데이터가 현재의 프로세스와 관련이 없을 수도 있음을 의미합니다. 데이터가 검열되거나 잘릴 수 있습니다. |
| 기본적으로 동일한 정보를 포함하는 열인 중복 열이 있을 수 있습니다. 또는 중복된 관찰이 있을 수도 있습니다. |
| 따라서 더럽거나 지저분한 데이터는 다양한 형태를 취할 수 있습니다. |
| 그렇다면 잠재적인 문제를 어떻게 식별합니까? |
| 글쎄요, 좋은 출발점은 데이터를 탐색하는 것입니다. 실제로 문제를 식별하면 데이터 탐색과 분석이 가능해집니다. 그리고 데이터 탐색을 시작하면서 분석에서 문제를 일으킬 수 있는 요소를 식별하기 시작합니다. |
| 따라서 좋은 출발점은 데이터 테이블을 스캔하여 명백한 문제를 찾는 것입니다. |
| 따라서 우리는 이 강연의 나머지 부분에서 구성 요소라는 예제를 사용할 것입니다. 이것은 STIPS 과정의 예제입니다. |
| 회사가 소형 부품을 생산하고 있는데 수율에 문제가 있는 경우. 이렇게 수집된 데이터는 369개의 배치입니다. 15가지 특성이 포착되었으며, 우리는 이러한 데이터를 사용하여 낮은 수율의 잠재적 근본 원인을 이해하는 데 도움을 주고 싶습니다. |
| 따라서 데이터 테이블 자체를 살펴보기 시작하면 어떤 종류의 데이터 품질 문제가 발생할 수 있는지에 대한 단서가 있습니다. 정말 좋은 출발점이군요. (이것은 JMP 15에 추가되었습니다.) |
| is is is 헤더 그래프입니다. 나는 헤더 그래프를 좋아합니다. 그들이 하는 일은 히스토그램을 보여주는 연속 변수가 있는 경우 중심화와 분포의 모양 및 확산을 볼 수 있는 것입니다. |
| 또한 값의 범위도 표시됩니다. 범주형 데이터가 있는 경우 가장 인구가 많은 막대에 대한 값이 포함된 막대 차트가 표시됩니다. 이제 이들 중 일부를 살펴보겠습니다. 배치 번호부터 시작하겠습니다. 따라서 배치 번호는 히스토그램으로 표시되며 실제로는 모양이 균일합니다. |
| 배치 번호는 식별자일 가능성이 높으므로 즉시 이러한 데이터가 잘못 코딩되었음을 알 수 있습니다. |
| 이 분포는 매우 치우쳐 있고 가장 낮은 값이 -6이라는 것을 알 수 있으며 이로 인해 음수 스크랩 번호를 가질 가능성에 대한 질문이 생길 수 있습니다. |
| 프로세스는 또 다른 것입니다. 기본적으로 두 개의 막대가 있고 실제로 두 개의 값만 있는 히스토그램이 표시됩니다. |
| 그리고 이 열 그래프와 헤더 그래프를 보면서 열 패널에서 |
| 예를 들어 배치 번호, 부품 번호 및 프로세스가 모두 연속형으로 코딩되어 있음을 쉽게 알 수 있습니다. 데이터를 JMP로 가져올 때 JMP가 숫자를 확인하면 자동으로 이러한 열을 숫자 연속형으로 코딩합니다. 그래서 이것들은 우리가 바꾸고 싶어할 수도 있는 것들입니다. |
| 데이터 자체를 살펴볼 수도 있습니다. 예를 들어 습도를 볼 때(그리고 데이터를 볼 때 맥락이 정말 중요합니다) 습도는 우리가 연속적인 데이터라고 생각하는 것입니다. |
| 하지만 여기에는 N/A가 있는 필드가 두 개 있습니다. |
| 영숫자 데이터가 있고 숫자 열에 텍스트 데이터가 있는 경우 데이터를 JMP로 가져올 때 해당 열은 명목형으로 코딩됩니다. 따라서 이것은 우리가 바로잡아야 할 바로 그 부분입니다. |
| 그리고 다른 열도 살펴볼 수 있습니다. 예를 들어 공급업체에 일부 값이 누락된 것으로 나타났습니다. JMP로 데이터를 가져올 때 |
| 범주형 데이터의 빈 셀을 보면 값이 누락되었음을 알 수 있습니다. 데이터가 입력된 방식이 일관성이 없는 일부 항목이 있다는 것을 알 수 있습니다. |
| 그래서 나는 내 데이터의 잠재적인 문제에 대한 몇 가지 심각한 단서를 얻고 있습니다. |
| 모든 점을 주목하세요. 온도는 연속형 변수이며 점으로 표시된 부분은 값이 누락되었음을 나타냅니다. 따라서 온도는 제 분석에 정말 중요한 요소인데, 이것이 문제가 될 수도 있습니다. |
| 이것의 자연스러운 확장은 한 번에 하나의 변수씩 데이터 탐색을 시작하는 것입니다. 데이터 보기를 처음 시작할 때 제가 가장 좋아하는 도구 중 하나는 열 뷰어입니다. 그리고 열 뷰어는 우리가 선택한 변수에 대한 숫자 요약을 제공합니다. |
| 값이 누락된 경우 N Missing 열이 있게 됩니다. 여기서는 온도 값 369개 중 265개가 누락되었음을 알 수 있습니다. 따라서 온도가 분석에서 중요하다고 생각한다면 이것은 심각한 격차입니다. |
| 또한 이상한 값이 있는지 확인할 수도 있습니다. 따라서 폐기된 수와 폐기율에 대한 최소 및 최대 수와 같은 항목을 살펴보면 음수 값이 표시됩니다. 이것이 가능하지 않다면 데이터나 데이터 수집 시스템에 문제가 있는 것입니다. |
| 변수의 잘못된 코딩을 확인하는 것도 매우 쉽습니다. 예를 들어 명목으로 코딩되어야 하는 시설 및 배치 번호는 평균과 표준 편차를 보고했습니다. |
| 이에 대해 생각하는 좋은 방법은 평균 배치 번호 또는 (부품 번호가 다른 변수임) 또는 부품 번호를 갖는 것이 물리적으로 가능하지 않은 경우 연속형 변수 대신 명목형 변수로 변경해야 한다는 것입니다. |
| 분포는 제가 데이터에 처음 익숙해질 때 다음으로 가는 곳입니다. |
| 연속적인 데이터가 있는 경우 분포를 사용하면 데이터의 모양, 중심화 및 분포를 이해할 수 있을 뿐만 아니라 비정상적인 값이 있는지도 확인할 수 있습니다. |
| 범주형 데이터의 경우 수준 수를 확인할 수도 있습니다. 예를 들어 고객 번호입니다. 고객번호가 중요한 변수이거나 잠재적으로 중요한 경우, |
| 고객 번호에 대한 수준이나 값이 많이 있습니다. 데이터를 준비할 때 실제로 데이터가 많지 않은 고객을 위해 이를 다른 카테고리와 함께 4~5개의 버킷으로 결합할 수 있습니다. |
| 습기. 열에 N/A가 있으면 문제가 발생합니다. 히스토그램 대신 막대 차트가 표시됩니다. |
| 공급업체에 대한 데이터에서 우리가 보고 있던 내용을 쉽게 확인할 수 있습니다. 예를 들어 Cox Inc와 Cox, Anderson은 세 가지 철자를 사용하고 Hersh는 세 가지 철자를 사용합니다. |
| 속도의 경우 약 60에서 140까지의 분포가 있지만 맨 아래에는 한두 가지 값이 있음을 알 수 있습니다. |
| 이는 0에 거의 가까우며 이는...데이터 입력 오류일 수도 있지만 확실히 우리가 조사하고 싶은 문제입니다. |
| 이것의 확장은 한 번에 두 개의 변수를 데이터에서 살펴보기 시작하는 것입니다. 예를 들어 그래프 빌더나 산점도를 사용합니다. |
| 그리고 한 번에 두 개의 변수를 보면 패턴을 볼 수 있고, 두 개 이상의 변수를 교차하는 특이한 패턴을 더 쉽게 볼 수 있습니다. |
| 예를 들어 스크랩 비율과 스크랩 개수를 보면 밴드가 몇 개 있다는 것을 알 수 있습니다. 그리고 데이터 테이블에 이 패턴을 설명할 수 있는 내용이 있을 수도 있습니다. |
| 이 경우 줄무늬는 다양한 배치 크기에 기인하므로 이 보라색 띠는 배치 크기가 5,000인 곳입니다. |
| 그리고 배치 크기가 작은 경우보다 배치 크기가 큰 스크랩을 만들 기회가 훨씬 더 많습니다. 그래서 그것은 어떤 의미가 있을 수도 있지만, 나는 또한 이해가 되지 않는 것을 봅니다. 여기 아래에 있는 이 두 값은 음수 범위에 있습니다. |
| 따라서 2차원에서 데이터를 볼 때 이러한 내용을 보는 것은 매우 쉽습니다. |
| 열 전환기와 데이터 필터를 사용하여 그래프에 차원을 추가할 수 있습니다. |
| 이는 또한 잠재적인 분석으로 이어지므로 중요할 수 있고 폐기율과 관련될 수 있는 x가 무엇인지 이해하는 데 관심이 있을 수 있습니다. |
| 동시에 데이터 품질 문제나 잠재적인 문제도 살펴보세요. 따라서 불량률의 경우 압력과 불량률 사이에 양의 관계가 있는 것처럼 보입니다. |
| 별로 관계가 없어보이네요. 폐기율 대 온도는 꽤 균일하므로 여기서는 별다른 일이 일어나지 않습니다. |
| 하지만 속도에 주목하세요. 부정적인 관계가 있지만 맨 위에는 두 가지 값이 있습니다. 히스토그램에서 본 한 가지 값과 눈에 띄는 두 번째 값이 있습니다. |
| 따라서 60 부근의 이 값은 단순히 이상값일 수도 있지만 유효한 지점일 수도 있습니다. 나는 아마도 0 근처에 있는 이 지점이 유효한지 아닌지 의문을 가질 것입니다. |
| 그래서 우리는 데이터 테이블을 살펴보았습니다. 우리는 한 번에 하나의 변수씩 데이터를 살펴보았습니다. 우리는 한 번에 두 가지 변수의 데이터를 살펴보았는데, 이 모든 것이 데이터 탐색에 딱 들어맞고 분석으로 이어집니다. |
| 이 과정이나 이 강연의 범위를 벗어나는 고급 도구(예: 이상값 탐색, 누락 탐색)를 사용할 수 있습니다. |
| 그리고 데이터 분석을 시작하면 추가적인 문제가 발견될 가능성이 높습니다. 예를 들어, 범주형 변수의 범주가 많다면 |
| 회귀 모델에 상호 작용을 적용하려고 하면 JMP에서는 실제로는 그렇게 할 수 없다는 경고를 표시합니다. 따라서 데이터 분석을 시작하면 이 전체 프로세스가 반복되며 프로세스 전반에 걸쳐 잠재적인 문제를 식별하게 됩니다. |
| 중요한 점은 데이터를 볼 때 직면하는 문제를 기록해 두는 것입니다. 그리고 이들 중 일부는 다음과 같습니다. |
| 진행하면서 수정되므로 값을 숨기거나 제외할 수 있고 모양을 변경할 수 있습니다. 진행하면서 데이터를 다시 정리할 수 있지만 새 데이터를 수집해야 한다고 결정할 수도 있습니다. 데이터 자체에 대한 신뢰도를 높이기 위해 DOE를 수행할 수도 있습니다. |
| 당신이 이 분석을 반복할 것이라는 것을 알고 있거나 다른 누군가가 이 분석을 반복하고 싶어할 것이라는 것을 알고 있다면, |
| 그런 다음 재현성을 확보하기 위해 수행 중인 단계를 캡처해야 합니다. 다른 사람이 결과를 재현할 수도 있고 나중에 분석을 반복할 수도 있습니다. 그래서 저는 이 부분을 조던에게 넘겨주고 조던은 |
| 재현 가능한 데이터 큐레이션에 대해 이야기해 보세요. |
| 조던 힐러 | 알았어, 고마워, 미아. |
| 안녕하세요, 저는 조던 힐러입니다. 저는 JMP의 시스템 엔지니어입니다. 조금 더 자세히 알아보고 재현성에 대해 좀 더 이야기해 보겠습니다. |
| 귀하의 데이터 큐레이션을 위해. |
| Mia는 이 아이디어를 매우 훌륭하게 소개했지만 몇 가지 세부 사항을 더 설명하겠습니다. 여기서의 아이디어는 쉽게 다시 수행할 수 있기를 원한다는 것입니다. |
| 분석을 위해 데이터를 준비하는 데 사용하는 모든 큐레이션 단계를 수행하면 세 가지 주요 이점이 있습니다. 첫 번째는 효율성입니다. 데이터가 변경되어 나중에 새 데이터에 대해 이러한 큐레이션 단계를 재생해야 하는 경우, |
| 모든 포인트 앤 클릭 활동을 다시 수행하는 것보다 원클릭 스크립트로 한 번 실행하는 것이 훨씬 더 효율적입니다. 정확성은 두 번째 이점입니다. 포인트 앤 클릭은 오류가 발생하기 쉬우므로 스크립트로 만들어서 정확한 재현을 보장합니다. |
| 마지막으로 문서화인데, 아마도 과소평가되었을 수도 있습니다. 스크립트가 있는 경우 스크립트는 수행하는 단계를 문서화합니다. |
| 가지고 갔다. 이것은 나중에 필연적으로 이 프로젝트를 다시 방문해야 할 때 다시 방문할 수 있는 탐색경로이며, 내가 이 데이터를 준비하기 위해 무엇을 했는지 기억해야 합니다. |
| 그 스크립트가 있으면 큰 도움이 됩니다. 그래서 오늘은 사례 연구를 진행해보겠습니다. 재현 가능한 데이터 큐레이션 스크립트 중 하나를 생성하는 방법을 보여 드리겠습니다. |
| 포인트 앤 클릭만 사용합니다. 활성화 기술은 JMP 16의 새로운 기능입니다. 강화된 로그에서 발견되는 것은 강화된 로그와 작업 기록입니다. |
| 그래서 우리가 할 일은 평소와 같이 포인트 앤 클릭 방식으로 데이터 큐레이션 활동을 수행하는 것입니다. 우리가 이것을 하면서, |
| 우리에게 필요한 스크립트, 컴퓨터 코드(JSL 코드, JMP 스크립트 언어의 경우 JSL이라고 함)가 자동으로 캡처됩니다. |
| 새로운 향상된 로그에서. 그런 다음 포인트 앤 클릭 큐레이션이 끝나면 해당 코드를 가져와 저장하기만 하면 됩니다. 우리는 그것을 조금 더 강하게 만들기 위해 몇 가지 조정과 수정을 하고 싶을 수도 있지만 그 부분은 선택 사항입니다. |
| 좋습니다. 이것은 여러분이 사용할 수 있는 치트 시트입니다. 이는 가장 일반적인 데이터 정리 활동 중 일부입니다. |
| 그리고 향상된 로그에 JSL 스크립트를 남기는 방식으로 이동 경로의 흔적을 남기는 방식으로 JMP 16에서 이를 수행하는 방법을 설명합니다. 따라서 행에 대한 연산, 열에 대한 연산, |
| 데이터 테이블을 수정하는 방법, 모든 데이터 정리 작업 및 포인트 앤 클릭을 통해 수행하는 방법. |
| 따라서 이는 데이터 정리를 위해 수행해야 할 모든 항목의 전체 목록도 아니고 향상된 로그에 캡처된 모든 항목의 전체 목록도 아니지만, 이는 여기에서 여러분이 손쉽게 확인할 수 있는 가장 중요한 항목입니다. |
| 좋습니다. 이제 Mia가 소개한 구성 요소 파일을 사용하여 사례 연구를 시작하고 향상된 로그를 사용하여 JMP 16에서 데이터 큐레이션 스크립트를 만들어 보겠습니다. |
| 여기 JMP 16이 있습니다. 이는 JMP 16 얼리 어답터 프로그램의 마지막 버전이므로 시험판입니다. 하지만 저는 이것이 JMP 16의 실제 출시 버전과 매우 유사할 것이라고 확신합니다. |
| 따라서 로그를 얻으려면 |
| 여기서 보여드리겠습니다. 이전 버전의 JMP 로그에 익숙하다면 이는 다르게 보입니다. 이 두 개의 패널로 나누어져 있는데, |
| 좋습니다. 상단에는 메시지 패널이 있고 하단에는 코드 패널이 있습니다. 우리는 여기서 시간을 보낼 예정입니다. 이것이 어떤 것인지 보여드리겠지만 파일 가져오기 및 이 열 삭제와 같은 몇 가지 빠른 작업을 수행하는 경우 간단한 미리 보기만 제공하겠습니다. |
| 제가 수행한 두 단계(데이터 가져오기 및 열 삭제)가 여기 이 메시지 패널에 나열되어 있는 것을 볼 수 있습니다. |
| 재현 가능한 데이터 큐레이션 스크립트에 필요한 JSL 코드는 여기 아래쪽 패널에 있습니다. 알았어, 그러니까 |
| 정말 흥미롭습니다. 이 코드를 갖고 필요할 때마다 가리키고 클릭하기만 하면 얻을 수 있다는 점은 JMP 16의 엄청난 이점입니다. |
| 따라서 JMP 16에서는 이 새로운 향상된 로그 보기가 기본적으로 활성화됩니다. 이전 버전의 로그, 즉 간단한 텍스트 로그로 돌아가고 싶다면 JMP 기본 설정 섹션에서 그렇게 할 수 있습니다. 새로운 것이 있어요 |
| 섹션을 선택하고 원하는 경우 로그의 이전 텍스트 보기로 다시 전환할 수 있습니다. JMP 16을 설치할 때 기본값은 향상된 로그이며 이러한 다른 기능 중 일부는 나중에 사례 연구에서 자세히 설명하겠습니다. |
| 알았어 그럼 정리할게 |
| 현재 빨간색 삼각형의 로그입니다. 로그를 지우고 사례 연구를 시작하겠습니다. Mia가 공유한 구성요소 데이터를 가져오겠습니다. 이 csv 파일부터 시작하겠습니다. |
| 그래서 |
| 끌어서 놓기만 하면 가장 간단한 종류의 가져오기를 수행하겠습니다. 아, 제가...이미 그 버전을 열어두었어요. 죄송합니다. 이전 버전을 닫고 시작하겠습니다. |
| 그리고 로그를 한 번 더 지워보세요. |
| 알았어, 간단한 가져오기 |
| JMP 창으로 드래그하면 됩니다. 이제 369개의 배치가 포함된 구성 요소 A 파일이 생겼으며 이제 데이터 정리 활동을 진행해 보겠습니다. 내가 켤게 |
| 헤더 그래프. 가장 먼저 볼 수 있는 것은 시설 열에 단 하나의 항목, 하나의 값, 즉 FabTech가 있으므로 여기에는 변형도 없고 흥미로운 것도 없다는 것입니다. 마우스 오른쪽 버튼을 클릭하여 삭제하면 됩니다. 열을 삭제하면 됩니다. |
| 그리고 다시, 강화된 로그에 들어가면서 그 내용이 캡처됩니다. |
| 알았어, 또 뭐야? 표 끝 부분에 있는 이 폐기율 열이 우리에게 매우 중요하다고 가정하고 표의 앞 부분을 보고 싶습니다. 네 번째 위치로 이동하겠습니다. |
| 열 패널에서 이를 잡고 고객 번호 바로 뒤에 드래그하면 됩니다. 우리는 거기에 갈. |
| Mia는 이 습도 열이 수입 시 주로 N/A로 인해 잘못 표시되었다고 언급했습니다. |
| 문자 변수로 들어오는 알파벳 문자입니다. 그럼 문제를 해결해 보겠습니다. 여기를 마우스 오른쪽 버튼으로 클릭하여 열 정보로 이동하겠습니다. |
| 데이터 유형을 문자에서 숫자로 변경하고, 모델링 유형을 명목에서 연속으로 변경합니다. 확인을 클릭하세요. 여기 로그를 클릭하면 이제 캡처된 4개 단계가 있고 계속 진행할 것입니다. |
| 알겠습니다. 다음은 무엇인가요? 연속형에서 명목형으로 변경해야 하는 여러 변수가 있습니다. 이는 배치 번호, 부품 번호 및 프로세스입니다. 따라서 세 개를 선택한 상태에서 마우스 오른쪽 버튼을 클릭하고 연속형에서 명목형으로 변경하겠습니다. |
| 그리고 그 내용은 모두 수정되었습니다. |
| 그리고 다시, 우리는 이 세 단계가 여기 로그에 기록되어 있음을 볼 수 있습니다. |
| 알았어, 또 뭐야? 약간 미용적인 내용이 있는 이 칼럼은 '압력'입니다. 우리 엔지니어들은 해당 열 이름을 PSI로 보고 싶어하므로 해당 열을 선택하고 PSI를 입력하여 변경하겠습니다. 다른 곳으로 이동하려면 탭하세요. 로그에도 기록됩니다. |
| 공급자. 미아는 우리에게 일관되지 않은 철자가 있다는 것을 보여주었습니다. 아마도 여기에 값이 너무 많을 것입니다. 문자 값을 수정해야 합니다. 열에 정확하지 않고 일관되지 않은 문자 값이 있는 경우 기록 도구를 생각해 보세요. |
| 녹음 도구는 이 문제를 해결하는 정말 효율적인 방법입니다. 따라서 공급자를 마우스 오른쪽 버튼으로 클릭하면 기록으로 이동합니다. |
| 그리고 이들을 적절하게 그룹화해 보겠습니다. 몇 가지 빨간색 삼각형 옵션부터 시작하겠습니다. 모든 값을 제목 케이스로 변환해 보겠습니다. |
| 공백도 잘라서 일관성 없는 간격이 수정되도록 하겠습니다. 이미 몇 가지 문제가 해결되었습니다. 나머지는 모두 수동으로 수정해 보겠습니다. 나는 앤더슨 가족을 하나로 묶을 것입니다. 나는 Coxes를 하나로 묶을 것입니다. |
| Hershes를 그룹화하십시오. Trutna와 Worley는 이미 단일 범주로 정확합니다. 그리고 마지막으로 수정하겠습니다. 비어 있거나 누락된 항목으로만 나열되어 있습니다. |
| 여기에 라벨이 없습니다. |
| 좋습니다. 녹음을 클릭하면 |
| 이러한 수정 사항을 공급자 2라는 새 열에 적용했습니다. |
| 1, 2, 3, 4, 5, 6개의 카테고리가 수정되고 축소되었습니다. |
| 좋은. |
| 좋아, 계산을 해보자. 여기서는 배치 크기와 폐기된 수를 사용하여 수율을 계산하겠습니다. |
| 오른쪽. 그리고 네, 이것이 약간 중복된다는 것을 알고 있습니다. 우리는 이미 불량률을 갖고 있고 수율은 1에서 불량률을 뺀 값이지만 논의를 위해 다음을 수행하겠습니다. |
| 계산. 따라서 해당 생산량 열이 폐기된 숫자 직후에 삽입되기를 원하므로 폐기된 숫자를 강조 표시한 다음 열 메뉴로 이동하여 새 열을 선택합니다. |
| 우리는 이것을 수확량이라고 부를 것입니다. |
| 그리고 선택한 열 뒤에, 숫자를 스크랩한 뒤에 새 열을 삽입하고 수율을 계산하는 공식을 제공하겠습니다. |
| 좋은 유닛의 수가 필요합니다. 이는 배치 크기에서 폐기된 수를 뺀 값이 될 것입니다. |
| 이것이 좋은 단위의 수이고 우리는 그 전체를 다음과 같이 나눌 것입니다. |
| 배치 크기. |
| 양호한 단위 수를 배치 크기로 나눈 것이 수율 계산입니다. |
| 그리고 확인을 클릭하세요. |
| 거기에 우리의 새로운 |
| 수익률 열. 1 마이너스 폐기율임을 알 수 있습니다. 그건...좋습니다. 지금은 100%보다 큰 수익률이 있다는 사실을 무시합시다. |
| 이제 거의 다 끝났습니다. 몇 가지만 더 변경하면 됩니다. 두 개의 프로세스가 있는 것을 확인했는데 지금은 프로세스 1과 프로세스 2라는 레이블만 지정되어 있습니다. |
| 그다지 설명적이지도 않고 별로 도움이 되지도 않습니다. 좀 더 설명적인 라벨을 붙여보겠습니다. 프로세스 1을 생산 프로세스라고 부르겠습니다. 프로세스 2를 실험적이라고 부르겠습니다. 따라서 다시 코딩하는 대신 값 레이블을 사용하여 이 작업을 수행하겠습니다. 열 정보로 들어가겠습니다 |
| 값 레이블을 1과 2에 할당하겠습니다. |
| 이 열의 하나는 생산을 나타냅니다. |
| 그것을 추가하십시오. |
| 그리고 두 개는 실험적을 나타냅니다. |
| 그것을 추가하십시오. |
| 확인을 클릭하세요. 좋은. 헤더 그래프에는 1과 2가 표시되지만 데이터 테이블에는 생산 및 실험이 표시됩니다. |
| 좋습니다. 스크립트를 저장하기 전 마지막 단계입니다. 논쟁의 여지가 있기 때문에 데이터에만 관심이 있다고 가정해 보겠습니다. 진공 상태가 해제된 경우에만 분석을 진행하고 싶습니다. |
| 그렇군요. 데이터의 하위 집합을 만들어 진공 상태가 해제된 행만 포함된 새 데이터 테이블을 만들겠습니다. 진공 상태가 해제된 셀 중 하나를 마우스 오른쪽 버튼으로 클릭하면 됩니다. |
| 일치하는 셀을 선택합니다. |
| 그러면 진공이 꺼진 313개 행이 선택됩니다. 이제 테이블 하위 집합으로 이동하겠습니다. |
| vac_off라는 이름을 지정할 새 데이터 테이블을 만듭니다. |
| 확인을 클릭하세요. |
| 좋습니다. 이것이 진공 상태가 해제된 데이터만 표시하는 313개의 행이 있는 새 데이터 테이블입니다. |
| 이것이 끝입니다. 우리는 모든 데이터 큐레이션을 완료했으며 이제 돌아가서 로그를 다시 방문하여 우리가 가지고 있는 것에 대해 조금 더 알아 보겠습니다. |
| 좋아요, 모든 단계와 제가 의도하지 않았던 몇 가지 단계가 여기 로그에 캡처되었습니다. |
| 여기를 보세요. 모든 라인이 우리가 수행하는 단계 중 하나입니다. |
| 또한 한 지점에서 행 선택을 지운 것과 같은 몇 가지 관련 없는 항목도 있습니다. 꼭 그럴 필요는 없었어요...대본에서 그 부분을 만들 필요도 없었어요. |
| 선택한 행을 지우고 있으므로 이를 제거해 보겠습니다. 해당 항목을 마우스 오른쪽 버튼으로 클릭하고 해당 항목을 선택 취소하여 제거하겠습니다. 좋아요. |
| 좋아요, 여기 메시지가 있고 JSL 코드가 여기 있어요. 그 유래와 결과에 주목해 보시기 바랍니다. 이것은 꽤 멋지다. |
| 우리가 단계를 밟을 때마다, 점과 클릭으로 행동을 할 때마다, 우리가 그 행동을 하는 것이 있고 결과가 있는 것이 있습니다. 이것이 기원이자 결과입니다. 예를 들어 시설 항목을 삭제했을 때... |
| 음, 아마도 그것은 나쁜 예일 것입니다. 대신 습도에 대한 열 정보를 변경하는 것을 선택하겠습니다. 유래, 우리가 한 일 |
| 구성 요소 A 테이블이었으며 여기에 데이터 테이블로 나열되어 있습니다. 그 위로 마우스를 가져가면 Bring Components A to Front라는 메시지가 표시됩니다. 이를 클릭하면 구성 요소 A 테이블로 이동합니다. 아주 좋아요. |
| 그 결과는 우리가 습도 기둥에 적용한 것입니다. 우리는 습도를 바꿨습니다. 데이터 유형을 숫자형과 모델링 유형 연속형으로 변경했습니다. 여기 아래를 보세요. |
| 여기를 클릭하고 습도 열로 이동하면...강조 표시되고 선택됩니다. JMP는 습도 열을 선택합니다. |
| 모든 곳에서 녹색을 사용하지만 마지막 결과는 파란색입니다. 그것은 다양한 데이터 테이블에서 우리의 활동을 추적하는 데 도움이 됩니다. 우리는 구성 요소 A 데이터 테이블에서 이러한 모든 활동을 수행했습니다. |
| 마지막 활동에서는 구성 요소 A 데이터 테이블의 하위 집합을 수행했으며 그 결과 vac_off라는 새 데이터 테이블이 탄생했습니다. 따라서 vac_off는 파란색입니다. 맞습니다. 그러면 해당 색상을 사용하여 사물을 추적하는 데 도움을 줄 수 있습니다. |
| 좋습니다. 여기 로그에서 보여드리고 싶은 마지막 기능은... |
| 매우 긴 일련의 단계가 있고 하나만 찾아야 하는 경우 이 필터 상자를 사용하면 도움이 됩니다. 하위 집합을 찾고 싶다고 가정해 보겠습니다. 거기는. 하위 집합 데이터 테이블을 찾았으며 필요한 코드에 직접 접근할 수 있습니다. |
| 좋아요, 그럼 이게... 이게 우리에게 필요한 전부예요. 데이터 큐레이션 단계가 포착되었습니다. 재현 가능한 데이터 큐레이션 스크립트를 만들기 위해 해야 할 일은 빨간색 삼각형으로 이동하여 스크립트를 새 스크립트 창에 저장하는 것입니다. |
| 가져오기 단계, 열 삭제 단계, 스크랩 비율 이동 단계. 모든 단계가 스크립트에 포함되어 있습니다. |
| 스크립트를 읽는 데 도움이 되는 구문 색상이 있습니다. 우리는 각 단계에서 우리가 수행한 작업을 정확하게 알려주는 유용한 의견을 모두 보유하고 있습니다. |
| 그렇군요, 이것이 전부입니다. 이것이 우리에게 필요한 전부이며 저는 이것을 저장하겠습니다. 가져오기 및 정리로 데스크탑에 저장하겠습니다. 구성 요소 가져오기 및 큐레이트라고 부르겠습니다. |
| 맞습니다. 이것이 재현 가능한 데이터 큐레이션 스크립트입니다. 따라서 JMP 홈 창으로 돌아가서 새 스크립트를 제외한 모든 항목을 닫으면 |
| 데이터 큐레이션 단계를 다시 재생해야 하는 경우 수행할 작업은 다음과 같습니다. 방금 스크립트 파일을 열었고 스크립트 실행 버튼을 클릭하여 실행할 수 있습니다. 데이터를 열고, 모든 정리 작업을 수행하고, 하위 집합을 수행하고, 313개 행이 있는 새 데이터 파일을 만듭니다. |
| 이제 새 데이터에서 이를 재생해야 한다고 상상해 봅시다. |
| 다른 버전의 구성 요소 파일이 있습니다. 이를 구성요소 B라고 합니다. 여기에는 50개의 행이 더 있으므로 369개 행 대신 419개 행이 있습니다. 또 다른 50개의 배치에 대해 프로세스를 실행했고 더 많은 데이터가 있다고 상상해 보세요. |
| 그래서 그것은 구성 요소 B라고 불리며 구성 요소 B에서 이 스크립트를 실행하고 싶습니다. 그러나 스크립트 전체에서 구성 요소 A를 여러 번 호출하고 있음을 알 수 있습니다. 따라서 구성 요소 A를 검색하고 교체한 다음 구성 요소 B로 변경하면 됩니다. 편집하다. |
| 찾다. |
| 구성 요소 A를 찾아 구성 요소 B로 교체합니다. 모두 교체합니다. 15개의 항목이 교체되었습니다. |
| 여기와 여기에서 볼 수 있습니다. |
| 이제 스크립트를 다시 실행하면 새 버전의 데이터가 생성됩니다. 더 많은 행이 있는 것을 볼 수 있습니다. 실제로는 꺼져 있었습니다. 이전에는 313이었는데 지금은 358입니다. |
| 좋습니다. 새로운 데이터에 대해 실행할 수 있는 재현 가능한 데이터 큐레이션 스크립트입니다. |
| 좋아요, 여기 다시 한 번 그 치트 시트가 있습니다. 이것은 우리가 강연과 함께 저장한 자료에 있을 것이므로, 여러분은 이것을 찾아보실 수 있습니다. 이는 데이터 큐레이션을 통해 가리키고 클릭하는 방법과 재생 가능하고 재현 가능한 멋진 데이터 큐레이션 스크립트를 남기는 방법을 알려줍니다. |
| 우리가 만든 스크립트에는 코딩이 전혀 필요하지 않았지만 몇 가지 팁, 즉 여러분이 사용할 수 있는 네 가지 팁을 알려 드리겠습니다. |
| 스크립트를 조금 향상시키기 위해. 첫 번째 팁은 스크립트 시작 부분에 이 줄을 삽입하는 것입니다. 모든 스크립팅에 대해 수행하는 것이 좋습니다. 여기에 기본 라인 이름을 삽입하기만 하면 됩니다. |
| 이는 귀하의 스크립트가 다른 스크립트와 상호 작용하는 것을 방지하기 위한 것입니다. 이를 네임스페이스 충돌이라고 하며 이것이 무엇을 하는지 실제로 이해할 필요는 없습니다. 그냥 실행하면 됩니다. 좋은 일입니다. 좋은 프로그래밍 연습입니다. |
| 두 번째 팁은 JSL 표현식 사이에 세미콜론이 있는지 확인하는 것입니다. |
| 향상된 로그는 자동으로 이 작업을 수행합니다. 모든 단계 사이에 세미콜론이 필요한 위치를 지정합니다. 그러나 직접 수정하는 경우 해당 세미콜론이 올바르게 배치되었는지 확인해야 합니다. 그러니 현명한 사람들에게 한 마디만 하십시오. |
| 댓글을 추가하세요. |
| 댓글은 프로그램에 메모를 남기는 방법이고, 프로그램을 망치지 않도록 하는 방법이겠죠. 하는 방법이에요 |
| JSL 인터프리터에 의해 해석되지 않는 내용을 프로그램에 남겨두십시오. 그리고 향상된 로그가 남긴 메모가 있습니다. 향상된 로그의 작업 기록이 남았지만 원하는 경우 해당 내용을 수정하고 추가할 수 있습니다. 그럼 댓글에 대한 주요 내용은 다음과 같습니다. |
| 일반적인 형식은 두 개의 슬래시이며 슬래시 뒤에 오는 모든 내용은 주석입니다. 따라서 줄의 시작 부분이나 줄 끝 부분에서 그렇게 할 수 있습니다. 따라서 인터프리터는 이 X = 9 JSL 표현식을 실행하지만 슬래시 뒤의 모든 내용을 무시합니다. |
| 더 긴 설명이 있는 경우 이 형식을 사용할 수도 있습니다. 이 형식은 시작 부분에 /*, 끝 부분에 */입니다. 코멘트가 포함되어 있습니다. 따라서 주석은 자신을 위해 메모를 남기는 데 유용할 뿐만 아니라 JSL 스크립트를 디버깅하는 데도 유용합니다. |
| 코드 줄을 제거하고 실행되지 않게 하려면 해당 두 개의 슬래시를 코드 앞에 붙이면 됩니다. 더 큰 코드 덩어리에 대해 그렇게 하려면 이 형식을 사용할 수 있습니다. 댓글을 활용하는 방법을 알아두면 좋습니다. |
| 마지막으로 전해드릴 팁은 데이터 테이블 참조를 일반화하는 것입니다. 해당 스크립트를 새 파일 이름인 구성요소 B에서 실행하기 위해 어떻게 검색하고 바꿔야 했는지 기억하시나요? |
| 스크립트의 데이터 테이블에서 15개의 인스턴스를 변경해야 했습니다. 15번이 아니라 한 번에 바꿔야 한다면 좋지 않을까요? 따라서 스크립트를 더욱 강력하게 만들 수 있습니다. |
| 데이터 테이블 참조를 일반화하여. 이름을 사용하는 대신 JSL 변수를 사용하여 해당 테이블 이름을 보관합니다. 내가 말하는 내용은 다음과 같습니다. 예를 보여 드리겠습니다. |
| 왼쪽에는 향상된 로그의 작업 기록에 의해 생성된 일부 코드가 있습니다. |
| Big Class 데이터 테이블을 공개합니다. 우리는 연령 열을 작업하여 이를 연속 모델링 유형으로 변경한 다음 새로운 계산된 열을 생성합니다. |
| 열 때 이를 사용하여 연령 열에 대한 변경을 수행하고 여기에서 사용합니다. |
| 이를 더욱 강력하고 일반화하기 위해 수행해야 할 작업은 매우 간단합니다. |
| 세 가지를 변경해야 합니다. |
| 여기서 첫 번째 변경 사항으로 이름을 지정합니다. 나는 BC를 선택했습니다. 당신은 당신이 원하는 무엇이든 선택할 수 있습니다. DT를 많이 보게 될 것입니다. |
| 따라서 BC는 스크립트의 나머지 부분에서 Big Class 데이터 테이블을 참조할 이름입니다. 그래서 나이를 바꾸고 싶을 때 |
| age는 BC 데이터 테이블과 해당 데이터 테이블의 age 열을 의미합니다. |
| 여기 아래에서는 Big Class 데이터 테이블에 메시지를 보내고 있으며 이것이 이중 화살표 구문의 의미입니다. 그래서 우리는 그것을 일반화하고 있습니다. 새 이름을 사용하여 해당 메시지를 보내도록 일반화하는 것입니다. |
| 데이터 테이블에. 이제 Big Class가 아닌 다른 이름의 새 데이터 테이블에서 이 스크립트를 실행해야 하는 경우 변경해야 할 유일한 사항은 다음과 같습니다. 스크립트에서 한 곳만 변경하면 됩니다. 검색하고 교체할 필요가 없습니다. |
| 좋아요, 네 가지 팁을 마치고 큐레이션 스크립트를 다음 단계로 발전시킬 준비가 되었다면 다음 단계를 따르세요. 파일 선택기를 추가할 수 있습니다. 코딩이 많이 필요하지 않습니다 |
| 누군가가 이 스크립트를 실행할 때 스크립트를 수동으로 편집할 필요 없이 실행하려는 파일을 탐색할 수 있도록 변경하는 것입니다. |
| 좋은 아이디어네요. 조직의 다른 사용자에게 스크립트를 배포하려는 경우 JMP 추가 기능에 포함하면 사용자가 JMP 내부 메뉴에서 스크립트를 선택하여 실행할 수 있습니다. |
| 정말 편리합니다. 마지막으로, 네트워크 어딘가에 보관되어 있는 마스터 JMP 데이터 테이블을 업데이트하기 위해 일정에 따라 이 큐레이션 스크립트를 실행해야 하는 경우 Windows의 작업 스케줄러나 Mac OS의 자동화기를 사용할 수 있습니다. 그건 일정대로. |
| 요약하자면, Mia는 데이터를 탐색하고 문제를 식별하기 위해 반복하여 데이터 큐레이션을 수행하는 방법에 대해 이야기했습니다. |
| 이러한 단계를 자동화하면 재현성의 이점을 얻을 수 있으며 이는 효율성, 정확성 및 작업 문서화입니다. |
| JMP 16에서 이를 수행하려면 평소처럼 가리키고 클릭하기만 하면 됩니다. 그러면 데이터 큐레이션 단계가 향상된 로그에서 발생하는 작업 기록을 통해 캡처됩니다. |
| 마지막으로 재현 가능한 데이터 큐레이션 스크립트를 생성하기 위해 향상된 로그에서 해당 JSL 코드를 내보내고 수정할 수 있습니다. 이것으로 우리 이야기를 마칩니다. 귀하의 시간과 관심에 진심으로 감사드립니다. |