안녕하세요 여러분
"Rel Interval", "SrID", "Pass_Fail" 열이 있습니다. 마지막 열 "Updated Pass_Fail_SrID"에 대한 스크립트를 생성하고 싶습니다. 모든 SrID는 상대 간격 "0"과 "24"에서 전달되지만 SrID "B"와 "D"는 "100"에서 실패합니다. 통과 및 실패를 참조하고 모든 체크포인트에 통과/실패를 할당하는 마지막 열 "업데이트된 Pass_Fail_SrID"를 만들고 싶습니다. 이는 플롯하는 동안 분할 참조를 가질 수 있도록 하기 위한 것입니다.

어떤 조언이라도 대단히 감사하겠습니다.
많은 감사
사테이
다음은 두 번째 테이블을 만들고 해당 테이블을 조작한 다음 결과를 원래 테이블로 다시 가져오는 방식으로 새 열을 만드는 간단한 스크립트입니다.이 작업은 스크립트를 사용하여 수행되지만 스크립트의 각 단계는 JMP가 잘 수행하는 대화형 포인트 앤 클릭 방법론을 사용하여 수행할 수 있습니다.
names default to here(1);
// create the example data table
dt = New Table( "Example 3",
Add Rows( 15 ),
New Column( "Rel Interval",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [0, 0, 0, 0, 0, 24, 24, 24, 24, 24, 100, 100, 100, 100, 100] )
),
New Column( "Sr ID",
Character( 8 ),
"Nominal",
Set Values(
{"A", "B", "C", "D", "E", "A", "B", "C", "D", "E", "A", "B", "C", "D",
"E"}
)
),
New Column( "Pass_Fail",
Character( 8 ),
"Nominal",
Set Values(
{"Pass", "Pass", "Pass", "Pass", "Pass", "Pass", "Pass", "Pass", "Pass",
"Pass", "Pass", "Fail", "Pass", "Fail", "Pass"}
)
)
);
wait(3); // this is added just so the viewer can see the original data table
// Split the Pass Fail column into 2 columns
dtSplit = dt << Split(
Split By( :Pass_Fail ),
Split( :Pass_Fail ),
Group( :Sr ID ),
Remaining Columns( Drop All ),
Sort by Column Property
);
wait(2);
// Create a new column that has a formula that will set the Pass or Fail value
dtSplit << New Column("Updated Pass_Fail_SrID", character, formula(Word( 1, :Fail || "," || :Pass, "," )));
wait(2);
// convert the formula column into static values
dtSplit:Updated Pass_Fail_SRID << delete formula;
wait(2);
// Delete no longer wanted columns
dtSplit << delete columns("Fail","Pass");
wait(2);
// Update the original data table with the information from the split table
dt << Update(
With( dtSplit ),
Match Columns( :Sr ID = :Sr ID )
);
이 작업을 대화식으로 수행하는 단계는 다음과 같습니다.
- Rel Interval, Sr ID 및 Pass_Fail 열이 있는 데이터 테이블을 클릭하여 데이터 테이블을 현재 활성 데이터 테이블로 만듭니다.
- 풀다운 메뉴로 이동하여 테이블==>분할을 선택합니다.
- Pass_Fail 열과 "Split By" 선택 항목을 "Split Columns" 선택 항목으로 설정한 다음 Sr ID 열을 "Group" 선택 항목으로 설정합니다.
- 확인을 클릭하십시오
- 생성된 새 데이터 테이블로 이동
- "라는 새 열을 만듭니다. 업데이트된 Pass_Fail_SrID " 그리고 데이터 유형을 "문자"로 만듭니다.
- 열 머리글을 마우스 오른쪽 버튼으로 클릭하고 "수식"을 선택합니다.
- 수식 창에서 수식을 입력합니다. 워드( 1, :실패 || "," || :합격, "," ) 이 수식은 Fail 및 Pass의 두 열을 연결하여 값 사이에 쉼표를 넣습니다.그런 다음 Word() 함수를 사용하여 연결된 목록에서 첫 번째 단어를 선택하고 Fails가 없는 행의 첫 번째 단어로 Pass 값을 가지므로 결과 값이 올바른 값을 설정합니다.
- 확인을 클릭하십시오
- 이제 새 열에 대한 열 정보 대화 상자 창으로 이동하고 열 속성 "수식"을 클릭한 다음 제거를 클릭합니다.이렇게 하면 새 열의 값이 계산된 값이 아닌 정적 값으로 변환됩니다.
- 통과 및 실패 열을 삭제합니다.더 이상 필요하지 않습니다.
- 원래 데이터 테이블로 돌아가 풀다운 메뉴로 이동하여 테이블==업데이트를 선택합니다.
- 업데이트를 가져오는 데 사용할 테이블로 새 열이 생성된 조회 테이블을 선택합니다.
- "열 일치" 상자를 선택하십시오.
- 두 데이터 테이블에서 Sr ID를 선택한 다음 일치 버튼을 클릭하십시오.
- 확인을 클릭하면 원래 데이터 테이블에 새 열이 추가됩니다.
안녕하세요,
가장 간단한 솔루션은 Pass_Fail 열을 Fail = 0 및 Pass = 1인 연속 숫자 열로 다시 코딩하는 것입니다. 그런 다음 Sr ID로 최소값을 찾아 언제든지 Sr ID가 실패했는지 확인할 수 있습니다.
첨부된 이 솔루션 참조
최상의,
TS