내 참조 단어와 2자 이상 다른 단어(열의 수식 사용)를 어떻게 식별합니까?안녕하세요 여러분,
다른 문자가 조합된 단어(예: AAAAAAAAAAA - 10자로 구성된 단어)로 구성된 열이 있습니다. 인접한 열에서 문자가 2개 이상 다른 단어(예: A)를 식별하고 싶습니다. 비 AAAA CE AA). 글자가 다른 위치는 중요하지 않으며 추가적으로 일부 단어는 참조 단어보다 짧을 수도 있고 길 수도 있습니다.
따라서 나는 참조 시퀀스와 2개 이상의 문자 차이가 있고 길이가 같은 단어를 구별/식별할 수 있는 공식을 얻고 싶습니다. 저는 아직 JMP 초보자인데 이것이 가능한지 모르겠습니다. 제안사항이 있으면 알려주세요 
고급 통계 모델링소비자 및 시장 조사실험 설계Re: 참조 단어와 2자 이상 다른 단어(열의 수식 사용)를 어떻게 식별합니까?감사합니다 Jthi! 잘 작동합니다 
Re: 참조 단어와 2자 이상 다른 단어(열의 수식 사용)를 어떻게 식별합니까?추가 정보를 제공해 주셔서 감사합니다! 스크립팅 인덱스에서 Shortest Edit Script를 확인하세요.

너무 느리지 않다면 뭔가를 할 수 있을 것입니다. Pat Match도 이 작업을 수행할 수 있지만 제대로 사용하는 방법을 (아직) 살펴보지 않았습니다.
editList = Shortest Edit Script(:List of sequences, "FEBRUARY");
common = "";
For(i = 1, i <= N Items(editList), i++,
If(editList[i][1] == "Common",
common = common || editList[i][2]
)
);
Length(common) < Length(:List of sequences) - 2;

Re: 참조 단어와 2자 이상 다른 단어(열의 수식 사용)를 어떻게 식별합니까?안녕하세요 크레이지,
도와주셔서 감사합니다. 1에서 5e6까지 있고 참조 단어는 하나만 있습니다. 기본적으로 참조 단어와 비교하여 문자가 2개 이상 다른 단어를 필터링하고 싶으므로 대답으로 예/아니요 또는 0/1 이상이 필요하지 않습니다. 질문을 살펴보세요:
test = "AEIOUA" // 동일한 문자열에 대해 nDiff = 0
test = "AAEIOU" // nDiff = 1 - 동일한 문자의 경우 재정렬됩니다.
- 첫 번째 A는 동일한 위치에 유지되는 하나만입니다. (5개의 차이점 문자)
test = "AEIOU" // nDiff = 같은 문자에 대해 1, 오른쪽에 하나 없음
test = "EIOUA" // nDiff = 같은 문자에 대해 1, 왼쪽에 하나 없음
테스트 = "EIOU" // nDiff = 1
테스트 = "AA" // dDiff = 1
test = "AXA" // dDiff = 1
- 길이는 AEIOUA와 동일하지 않습니다. 이를 위해 Len 함수를 적용하여 해당 단어를 필터링했습니다.
test = "AXXXXA" // 길이 일치에 대한 dDiff = 1
- 첫 번째 A와 마지막 A는 같은 위치에 유지됩니다. (4개의 차이점 문자)
테스트 = "AEI 우오 A" // 내부 문자가 교체된 경우 dDiff = 0
AEIOUA와 2글자만 다르므로 기준을 통과합니다.
test = "AEIOUEIOU" // 반복되는 문자의 경우 nDiff = 1
긴 순서. Len을 사용하여 제거되었습니다.
죄송합니다. 질문/문제를 명확하게 설명하지 못했습니다. 귀하의 질문 외에도 제가 찾고 있는 것의 예를 재현했습니다.
| 참조 서열 | 2월 |
| | |
| 시퀀스 목록 | 라벨 - 참조와 다른 문자가 2자 이상입니까? |
| 2월 ㅏ 유아리 | 아니요 |
| 와아 루어리 | 예 |
| YRAURBEF | 예 |
| 2월 아르 자형 아르 자형 아르 자형 | 아니요 |
| 2월 여 | 아니요 |
| 와이 이자형 아우르베프 | 예 |
| 와이 이자형 AUR 아리 | 예 |
Re: 참조 단어와 2자 이상 다른 단어(열의 수식 사용)를 어떻게 식별합니까?몇 가지 예가 더 필요합니다. 차이점의 수는 얼마입니까?(과도하게 지정하지 말고 중요하지 않은 부분을 표시하십시오.)
ref = "AEIOUA" // 반복되는 문자의 규칙을 이해하려고 합니다.
test = "AEIOUA" // 동일한 문자열에 대해 nDiff = 0
test = "AAEIOU" // nDiff = ? 같은 문자에 대해 재정렬됨
test = "AEIOU" // nDiff = ? 같은 문자에 대해 오른쪽에 하나가 누락됨
test = "EIOUA" // nDiff = ? 같은 문자의 경우 왼쪽에 하나가 누락됨
test = "EIOU" // nDiff = ?
test = "AA" // dDiff = ?
test = "AXA" // dDiff = ?
test = "AXXXXA" // dDiff = ? 길이를 맞추려면
test = "AEIUOA" // dDiff = ? 내부 문자 교환
test = "AEIOUEIOU" // nDiff = ? 반복되는 글자의 경우
다음 답변은 알고리즘을 선택하는 데 도움이 됩니다.
~1e6개의 테스트 단어를 말씀하셨습니다. 당신은 얼마나 많은 참조 단어를 보고 있나요?
"예/아니요 차이가 2개 이상 있습니다" 이외의 답변이 필요합니까? 차이점 수를 계산하는 것이 유용할까요?
Re: 참조 단어와 2자 이상 다른 단어(열의 수식 사용)를 어떻게 식별합니까?"라는 말의 의미를 잘못 이해한 것 같습니다. 인접한 열에서 2자 이상의 문자가 다른 단어를 식별하고 싶습니다. ". 내가 제안한 것은 소스 열의 각 셀에 두 개 이상의 개별 문자로 구성된 문자열이 포함된 행에 플래그를 지정하는 것입니다(따라서 참조 시퀀스나 문자열이 없음).
Re: 참조 단어와 2자 이상 다른 단어(열의 수식 사용)를 어떻게 식별합니까?안녕하세요 Jthi, 제안해 주셔서 감사합니다.
솔직히 말해서 나는 여전히 공식을 이해하려고 노력하고 있습니다 :'). 제가 작업 중인 파일에는 단 하나의 참조 단어가 있으며 가능한 모든 위치/문자 조합을 사용하여 백만 개가 넘는 행 항목을 선별해야 합니다. 수식에서 해당 값을 정의할 수 없기 때문에 이 수식이 작동하지 않을 것이라고 가정합니다. 대용량 데이터베이스를 고려하면 적응이 가능할까요?
Re: 참조 단어와 2자 이상 다른 단어(열의 수식 사용)를 어떻게 식별합니까?안녕하세요 이안님,
의견을 보내 주셔서 감사합니다. 귀하가 작성한 공식을 구현하려고 했지만 내 참조 시퀀스가 AAAAAAA이고 다른 것이 아니라는 것을 어디에서 정의할 수 있는지 알 수 없습니다. 항목 선택의 ""를 "AAAAAAAA"로 바꾸었는데 결과가 올바르지 않습니다. 당신이 작성한 공식을 어떻게 업그레이드할 수 있는지 제안해 주시겠습니까?
Re: 참조 단어와 2자 이상 다른 단어(열의 수식 사용)를 어떻게 식별합니까?이를 수행하는 방법은 다양합니다. 다음은 추가 옵션 중 하나입니다.
Names Default To Here(1);
/*
a = "ABAAAACEAA";
b = "AAAAAAAAAA";
Show(!IsMissing(Substitute(a, Left(a,1), "")));
Show(!IsMissing(Substitute(b, Left(b,1), "")));
*/
New Table("Untitled 2",
Add Rows(3),
New Column("Column 1", Character, "Nominal", Set Values({"ABAAAACEAA", "AAAAAAAAAA", "BBBBAAA"})),
New Column("Column 2",
Numeric,
"Continuous",
Format("Best", 12),
Formula(!Is Missing(Substitute(:Column 1, Left(:Column 1, 1), "")))
)
);
Column1은 문자가 포함된 열입니다.
Formula(!Is Missing(Substitute(:Column 1, Left(:Column 1, 1), "")))
이 간단한 예에서는 첫 번째 위치에서 찾은 문자열의 모든 값을 바꾸는 것입니다. 아직 일부 문자가 남아 있으면 문자열에 2개 이상의 문자가 있다는 것을 알 수 있습니다. 대체할 값이 두 개 이상인 경우 대체 함수 인수를 수정하여 동일한 아이디어를 사용할 수 있어야 합니다.
Re: 참조 단어와 2자 이상 다른 단어(열의 수식 사용)를 어떻게 식별합니까?시작하는 데 도움이 될 첨부된 표를 살펴보십시오. 그 핵심은 수식 열('결정'이라고 하며 표의 열 패널에 '+' 기호로 표시됨)입니다. '+'를 클릭하면 다음이 제공됩니다.

이를 이해하려면 JSL에 대한 지식이 필요하며, 필요한 경우 '도움말 > 스크립팅 색인'을 사용하여 작동 방식을 정확하게 파악할 수 있습니다.