테이블에서 모든 열을 한 번에 선택csv 파일에서 가져온 데이터가 포함된 테이블이 여러 개 있습니다. 불행히도 모든 테이블의 길이가 동일하지는 않으며 매일 길이가 다릅니다. 그러나 ID는 여전히 모든 열을 데이터 유형 문자로 변환할 수 있기를 원합니다. jmp 스크립트 내에 개별 열을 지정하지 않고도 이 작업을 수행할 수 있는 명령이 있습니까(총 열 수를 모르기 때문에)Re: 테이블에서 모든 열을 한 번에 선택모든 열 이름 목록을 만든 다음 각 열에 속성을 반복적으로 할당하는 짧은 스크립트를 사용할 수 있습니다.제목: 테이블에서 모든 열을 한 번에 선택하는 방법답변 감사합니다
그런 기능을 하는 샘플 코드가 있으신가요?
제가 하려는 것은 기본적으로 모든 열을 "문자열" 형식으로 변환하는 것입니다.
지금까지 제가 찾은 가장 근접한 방법은 이 코드를 사용하는 것입니다.
_________________________________
dt=DataTable("Log60");
cc=dt< ncols = N개 항목(cc);
이 함수는 "숫자" 형식의 열 이름을 반환합니다.
_________________________________
스크립팅 가이드에서는 위 코드에 나열된 모든 열을 선택하기 위해 이러한 유형의 루프를 사용하라고 안내합니다.
________________________
for(i=1,i<=ncols,i++,
cc(i)< ________________________
하지만 이건 저한테는 작동하지 않아요. '잘못된 행 번호 -1'이라고 나옵니다.제목: 테이블에서 모든 열을 한 번에 선택하는 방법저는 "cc(i)" 대신 "cc[ i ]"를 사용하니 잘 작동합니다. 혹시 변수와 충돌하는 cc 또는 i라는 이름의 열이 있으신가요? cc[ i ]<를 시도해 보세요.
수정: 포럼 소프트웨어가 스타일링에 대괄호를 사용하는 것 같아서 메시지가 깨져 보입니다. 공백을 넣어 다시 시도해 보겠습니다.
이 메시지는 xan@jmp 님이 수정했습니다.제목: 테이블에서 모든 열을 한 번에 선택하는 방법다음 예제 스크립트는 현재 데이터 테이블의 모든 열의 데이터 형식을 문자형(Character)으로 변환합니다. 이는 이전에 이 스레드에서 제시된 방법보다 더 간결한 제안입니다.
for() 함수를 사용하여 열을 순회할 때, 열의 개수나 열 이름을 미리 알 필요는 없습니다. NCol() 함수는 데이터 테이블의 열 개수를 반환하고, Column() 함수는 인덱스를 사용하여 열을 참조할 수 있도록 합니다.
dt = Current Data Table();
For( i = 1, i <= N Col( dt ), i++,
Column( dt, i ) << Data Type( "Character" )
);
도움이 되었으면 좋겠습니다.
제목: 테이블에서 모든 열을 한 번에 선택하는 방법한번 시도해 보세요
dt=current data table();
::cc = ::dt << Get Column Names( Continuous );
::ncols = N Items( ::cc );
For( ::i = 1, ::i <= ::ncols, ::i++,
::name = ::cc[::i];
::cc[::i] << Data Type( Character );
Current Data Table() << Run Formulas;
);