문자 열 수준에 따라 증가 (스크립트)어쩌면 나는 나무 앞에서 나무를 다시 보지 못할 수도 있습니다. 나는 문자 열의 모든 고유 수준에 대해 약간의 숫자 증가를 적용하고 싶습니다.
같은 레벨은 같은 증분을, 다른 레벨은 다른 숫자를 얻습니다.
가정 : 데이터는 "Character_Column_Have"로 정렬됩니다. "Numeric_Increment_Want"는 1로 시작해야합니다.
Character_Column_Have Numeric_Increment_Want
AAA 1
AAA 1
ABC 2
BBB 3
CCD 4
EEE 5
EEE 5 ...
지금까지 달성 한 유일한 결과는 "col ** bleep ** rank"를 사용하여 JMP를 반복적으로 중단하는 것입니다.
JMP와 저도 더 잘할 수 있습니다.
모든 포인터에 감사드립니다!
초보자
다시 : 문자 열 수준에 따라 증가 (스크립트)내가 사용할 공식은 다음과 같습니다.
If( Row() == 1,
Summarize( groups = by( :Character_Column_Have ) )
);
Contains( groups, :Character_Column_Have );
다른 방법들도 있습니다.
- Recode를 사용하여 새 열을 작성하고 원하는 새 숫자 값의 값을 변경하십시오.
- Character_Column_Have의 값당 하나의 행으로 새 데이터 테이블을 작성하려면 Group 열로 Character_Column_Have가있는 요약 플랫폼을 사용하십시오. 그런 다음 Row () 수식이있는 새 열을 만듭니다. 마지막으로 업데이트 플랫폼을 사용하여 요약 테이블을 원래 테이블과 결합하십시오.
다시 : 문자 열 수준에 따라 증가 (스크립트)나는 짐의 대답을 좋아한다. 간단한 공식을 사용할 수도 있습니다.
If(
Row() == 1, 1,
:Have == Lag( :Have ), Lag( :Want ),
Lag( :Want ) + 1
)
또는 동등한 스크립트 :
For Each Row( If( Row() == 1, 1, :Have == Lag( :Have ), Lag( :Want ), Lag( :Want ) + 1 ) );
다시 : 문자 열 수준에 따라 증가 (스크립트)나는 모든 접근 방식을 시도했지만 작동시킬 수없는 것 같습니다.
하나의 접근 방식이 개념적으로 나를 어리둥절하게합니다. 두 개의 입력 열을 처리하며 문자 열만 입력 할 수 있습니다.
JMP 데이터 셋 "Dolphins"에 대한 한 가지 접근법을 보여 주시겠습니까 (아래 발췌)?
여행 아침 6
피드 모닝 28
... 여행 저녁 13
피드 저녁 56
사회의 밤 10
"Dolphins"레벨 아침, 정오, 오후, 저녁에는 1,2,3의 증가가 예상됩니다. 4 (정렬 순서에 따름)
다시 : 문자 열 수준에 따라 증가 (스크립트)Numeric_Increment_Want 열의 수식은 다음과 같습니다.
If( Row() == 1,
Summarize( myGroups = by( :Period ) )
);
Contains( myGroups, :Period );
이전 코드에서 "Groups"에 대한 참조가 Groups라는 열이있는 Dolphins 데이터 테이블과 충돌하기 때문에 이전 코드를 변경해야했습니다. 그래서 변수 이름을 myGroups로 변경했습니다.

새 열이 추가 된 데이터 테이블이 첨부 됨
다시 : 문자 열 수준에 따라 증가 (스크립트) New Column( "Increment",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula(
If( Row() == 1,
Summarize( myGroups = by( :Period ) )
);
Contains( myGroups, :Period );
)
);
왜 지금 작동하는지 설명 할 수 없습니다. "그룹"도 조정했습니다. 기만. 어쨌든, 나는 그것을 그렇게 해결했고 그것은 매력처럼 작동합니다. 짐, 정말 고마워 다시!