목록에서 요소 제거안녕하세요,
누군가 나를 도울 수 있습니다 ..... 나는 다음과 같은 두 가지 목록이 있습니다.
MYLIST = {:empty, :empty2, :Name("A:k"), :Name("A:m"), :Name("A:x"), :Name("A:y"), :NA, :Name("D:3"), :Name("D:6"), :Name("D:8")};
DELCOLS= {:empty, :empty2};
MYLIST에서 DELCOLS 목록의 요소를 제거하고 싶습니다.
예상 결과:
MYLIST = {:Name("A:k"), :Name("A:m"), :Name("A:x"), :Name("A:y"), :NA, :Name("D:3"), :Name("D:6"), :Name("D:8")}
미리 감사드립니다
잔파올로
Re: 목록에서 요소 제거Jeff의 코드는 훌륭하며 원치 않는 항목의 여러 인스턴스를 제거하는 영리한 방법을 사용합니다.
JSL에서 작업을 수행하는 방법이 여러 가지인 경우가 종종 있음을 설명하기 위해 다음은 연관 배열을 사용하는 대체 접근 방식입니다.
(참고: 모든 배수가 제거됨)
MYLIST = {:empty, :empty2, :Name("A:k"), :Name("A:m"), :Name("A:x"), :Name("A:y"), :NA, :Name("D:3"), :Name("D:6"), :Name("D:8")};
DELCOLS = {:empty, :empty2};
// Remove DELCOLS from MYLIST. Retains original order of items.
AA = Associative Array(MYLIST, 1 :: N Items(MYLIST));
MYLIST = (AA << Remove(Associative Array(DELCOLS)) << get keys)[Rank(AA << get values)];
// If order is not important, this simpler version works (items sorted alphabetically)
MYLIST_sorted = Associative Array(MYLIST) << Remove(Associative Array(DELCOLS)) << get keys;
Show(MYLIST, MYLIST_sorted);
Re: 목록에서 요소 제거@txnelson 맞습니다. Scripting Index와 Scripting Guide는 훌륭한 리소스입니다.
그래도 도움이 되려면 다음을 확인하세요. 을 위한() 고리, 에서 제거() , 목록으로() 그리고 위치() 기능.
MYLIST = {:empty, :empty2, :Name( "A:k" ), :Name( "A:m" ), :Name( "A:x" ), :Name( "A:y" ), :NA,
:Name( "D:3" ), :Name( "D:6" ), :Name( "D:8" )};
DELCOLS = {:empty, :empty2};
For( i = 1, i <= N Items( delcols ), i++,
Remove From( mylist, As List( Loc( mylist, delcols[i] ) ) )
);
Re: 목록에서 요소 제거Remove() 함수를 사용합니다. 스크립팅 인덱스 보기
도움말==>스크립팅 인덱스
자세한 내용은
스크립팅 가이드를 읽어 보시기 바랍니다.목록을 조작하는 방법에 대한 세부 정보가 포함되어 있습니다.
도움말==>도서==>스크립팅 가이드