"like"를 사용하여 문자열을 필터링하시겠습니까?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />안녕하세요,
아래 예를 사용하여 "M"으로 시작하는 모든 이름을 어떻게 필터링할 수 있습니까?
"좋아요"나 이와 유사한 것을 사용할 수 있나요?
데이터 필터( 필터 추가(
열( :이름 ),
Where( :name like M* ) /// 물론 작동하지 않습니다!
),
도와 주셔서 감사합니다
open("$sample_data\Big class.jmp");
그래프 빌더(
크기( 454, 472 ),
제어판 표시( 0 ),
변수( X( :age ), Y( :weight ), Y( :height ), Overlay( :name ) ),
요소( 위치( 1, 1 ), 점( X, Y, 범례( 3 ), 지터( 1 ) ) ),
요소( 위치( 1, 2 ), 점( X, Y, 범례( 4 ), 지터( 1 ) ) )
);
Re: "like"를 사용하여 문자열을 필터링하시겠습니까?당신의 도움을 주셔서 감사합니다
제오프
Re: "like"를 사용하여 문자열을 필터링하시겠습니까?안타깝게도 JMP의 데이터 필터는 부분 문자열 일치를 지원하지 않습니다. 전체 값이 일치해야 합니다.
그러나 부분 문자열과 일치하는 모든 값을 찾은 다음 데이터 필터 호출에서 해당 목록을 사용할 수 있습니다.
dt = 열려 있음 ( "$sample_data\빅 클래스.jmp" ) ;
그래프 빌더 (
크기 ( 454 , 472 ) ,
제어판 표시 ( 0 ) ,
변수 ( 엑스 ( : 나이 ) , 와이 ( : 무게 ) , 와이 ( : 키 ) , 씌우다 ( : 이름 ) ) ,
강요 ( 위치 ( 1 , 1 ) , 포인트들 ( 엑스 , 와이 , 전설 ( 삼 ) , 지터 ( 1 ) ) ) ,
강요 ( 위치 ( 1 , 2 ) , 포인트들 ( 엑스 , 와이 , 전설 ( 4 ) , 지터 ( 1 ) ) )
) ;
//고유한 이름 목록을 생성합니다.
요약하다 ( 이름 목록 = ~에 의해 ( : 이름 )) ;
//패턴과 일치하는 문자열의 위치를 유지하는 행렬을 만듭니다.
엑스 = [] ;
//x에 일치하는 항목을 저장하는 이름 목록을 반복합니다.
을 위한 ( 나 = 1 , 나 <= N개 품목 ( 이름 목록 ) , 나 ++,
만약에 ( 다음으로 시작 ( 이름 목록 [ 나 ] , "중" ) ,
// "|/"는 행렬 수직 연결 연산자입니다.
엑스 = 엑스 |/ 나 ;
)
) ;
dt << 데이터 필터 (
위치 ( { 848 , 24 } ) ,
필터 추가 (
기둥 ( : 이름 ) ,
어디 ( : 이름 == 이름 목록 [ 엑스 ] ) ,
)
) ;
Re: "like"를 사용하여 문자열을 필터링하시겠습니까?유사한 설명을 모방하는 옵션은 다음과 같습니다.
Where( (:name, "M" )으로 시작) /* M으로 시작하는 이름 */
Where( (:name, "M" )) /* M으로 끝나는 이름 */
Where( contain (:name, "M" )) /* 이름에 M이 포함됨 */
Re: "like"를 사용하여 문자열을 필터링하시겠습니까?당신이 찾고있는 필터 기능은 다음과 같습니다.
(이름, "M")으로 시작
MK