주어진 열 내에서 지정된 문자의 모든 인스턴스를 찾고 바꾸는 방법이것은 매우 간단한 질문입니다.JMP 테이블에 지정된 열이 있고 해당 열 내에서 지정된 문자의 모든 인스턴스를 찾아 교체하는 JMP 스크립팅 명령이 필요합니다.예를 들어 GROUP이라는 열이 있고 GROUP의 특정 행에 "A05 또는 "B17과 같은 값이 포함되어 있으며 항목이 "A05 및 "B17 대신 A05 및 B17이 되도록 GROUP의 모든 " 문자를 바꾸고 싶습니다. 이 작업은 테이블 - 검색 - 찾기로 이동한 다음 찾기 및 바꾸기를 수행하여 수동으로 쉽게 수행할 수 있지만 이를 스크립팅하는 간단한 방법이 있습니까?
Re: 주어진 열 내에서 지정된 문자의 모든 인스턴스를 찾고 바꾸는 방법행에 대한 따옴표 루프를 제거하고 대체 기능을 사용하십시오.
dt = New Table( "Test Quote Removal", Add Rows( 4 ),
New Column( "Group", Character, "Nominal",
Set Values( {"A05", "\!"A06", "\!"A07", "A08"} )
)
);
for (i = 1, i <= nrows(dt), i++,
dt:group[i] = substitute(dt:group[i], "\!"", "");
);Re: 주어진 열 내에서 지정된 문자의 모든 인스턴스를 찾고 바꾸는 방법다음은 A05 문제를 처리할 간단한 JSL입니다.
Names Default To Here( 1 );
dt = Current Data Table();
foundRows = dt:yourColumn << get rows where( Contains( :yourColumn, "A05" ) );
If( N Rows( foundRows ) > 0,
:yourColumn[foundRows] = "A05"
);
Re: 주어진 열 내에서 지정된 문자의 모든 인스턴스를 찾고 바꾸는 방법답장을 보내 주셔서 감사합니다.내가 틀렸을 수도 있지만 Recode를 사용하여 알려진 전체 값을 다른 값으로 바꿀 수 있다고 생각했습니다.하지만 제 경우에는 좀 더 구체적으로 말하면 GROUP의 값은 "A05, "B17, 또는 "*** 형식의 모든 것일 수 있습니다. 여기서 내가 아는 것은 값이 " 문자로 시작하고 * 문자는 무엇이든 될 수 있는 와일드카드입니다.정말 내가하고 싶은 것은 값에서 "를 제거하는 것입니다.
Re: 주어진 열 내에서 지정된 문자의 모든 인스턴스를 찾고 바꾸는 방법Recode를 사용하여 jmp 테이블에서 대체할 수 있습니다. 제출하기 전에 나중에 사용할 스크립트를 가져올 수 있습니다.

dt = Current Data Table();
dt << Begin Data Update;
dt << Recode Column(
dt:GROUP,
{Map Value( _rcOrig, {"\!"A05", "A05", "\!"B17", "B17"}, Unmatched( _rcNow ) )},
Target Column( :GROUP )
);
dt << End Data Update;