열 목록에서 열 이름 가져오기
Names Default to Here(1);
dt = Current Data Table();
column list = dt << Get Column Names(Continuous);
key list = dt << Get Column Group("KEYS");"열 목록"에는 이름 목록 연속 데이터를 포함하는 열에서.
"키 목록"에는 열 목록 "키" 그룹에서.
"키 목록"에서 열 이름을 어떻게 얻습니까? 궁극적으로 "KEYS" 그룹에 있는 "열 목록"에서 연속적인 열 이름을 제거하고 싶습니다. 목록을 관리하기 위해 Craige Hales의 게시물을 찾았지만 동일한 형식으로 가져와야 합니다.
Re: 열 목록에서 열 이름 가져오기다음은 저를 도와줄 수 있는 쉬운 작업입니다. 일단 "열 이름을 가져오면", 그런 다음 열 이름의 자체 동일한 목록인 데이터 테이블에 어떻게 삽입할 수 있습니까?감사합니다 데빈
Re: 열 목록에서 열 이름 가져오기머리를 부딪히지 말아주세요! 사용 도움말 > 스크립팅 색인 대신에.

Re: 열 목록에서 열 이름 가져오기필요한 리터럴 문자열과 "문자열" 옵션 없이 제공하지 않는 "열 이름 가져오기"에 대한 참고 사항에 감사드립니다. 나는 이것에 대해 오랫동안 머리를 부딪쳤고 "문자열"을 추가하면 즉시 해결되었습니다.Re: 열 목록에서 열 이름 가져오기비결은 Char(key list[i]))
(열 참조를 문자열로 변환할 생각은 전혀 없었습니다.)Re: 열 목록에서 열 이름 가져오기다음은 제안된 대로 키 목록을 문자열로 변환한 후 도달한 솔루션입니다.
// Initialize
Names Default to Here(1);
dt = Current Data Table();
key list names = {};
// Get a list of all continuous columns
column list = dt << Get Column Names(Continuous, String);
// Create a list of column names in the KEYS group
key list = dt << Get Column Group("KEYS");
For(i = 1, i <= N Items(key list), i++,
Insert Into(key list names, Char(key list[i]))
);
// Remove from the column list any column that is in the KEYS group
/* <BR />Adapted from - Re: Quick way to compare two lists (uncommon elements)?
JAN 10, 2017 6:41 AM, by Craige_Hales, STAFF (RETIRED)
*/
set1 = Associative Array(column list);
set2 = Associative Array(key list names);
// Find the names common to both lists
intersection = set1;
intersection << Intersect(set2);
// Remove the common names
cleaned list = set1;
cleaned list << Remove(intersection);
column list = cleaned list << Get Keys;
Re: 열 목록에서 열 이름 가져오기감사해요. "프로세스" 그룹에 있는 모든 이름을 "열 목록"에서 제거하려고 합니다(귀하의 예 사용). 따라서 "키 목록"이 아닌 "열 목록"에서 항목을 제거해야 합니다. Char(key list[i])에 대한 열 목록을 검색하고 발견되면 제거해야 할 것으로 예상합니다.Re: 열 목록에서 열 이름 가져오기<< Get Column Names 및 << Get Column Group 모두에서 반환되는 것은 JMP 목록입니다.값의 배열이라고 대략적으로 생각할 수 있습니다.목록 사용에 대한 스크립팅 가이드 섹션을 검토하십시오.
다음은 두 목록에서 공통적으로 발견되는 열 이름에 대해 두 목록 간의 비교를 확인한 다음 키 목록 목록에서 제거하는 코드 수정입니다.Contains 함수가 작동하려면 리터럴 문자열이 필요하므로 << 열 이름 가져오기에 "문자열" 옵션이 추가되고 Contains() 함수에 키 목록의 검색 요소가 있는 이유입니다. , 열 이름 목록에서 검색하기 전에 문자열로 변환됩니다.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
column list = dt << Get Column Names( Continuous, string );
key list = dt << Get Column Group( "Processes" );
Show( "complete list", key list );
For( i = N Items( key list ), i >= 1, i--,
If( Contains( column list, Char( key list[i] ) ),
key list = Remove( key list, i, 1 )
)
);
Show( "final list", key list );
내 예에서 그룹의 모든 요소가 숫자 열이므로 키 목록에 값이 없습니다.