열려 있는 여러 .jmp 데이터 테이블을 .csv 파일로 저장하려면 어떻게 해야 합니까?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />테이블 하위 집합의 결과로 .csv 파일로 저장해야 하는 여러 .jmp 데이터 테이블이 있습니다. 열려 있는 모든 테이블을 저장하기 위한 스크립트를 시도했지만 .jmp 파일로 저장하는 데만 사용할 수 있습니다.
openDTs=목록();For(i=1, i<=N Table(), i++, Insert Into(openDTs, 데이터 테이블(i)););
For(i=1, i<=N 항목(openDTs),i++,openDTS <<저장(););
하위 집합 작업에서 많은 수의 테이블을 열게 되므로 그렇게 많은 테이블을 열지 않도록 하고 하위 집합 작업 후에 저장 절차를 통합하는 것이 좋습니다. 나는 어떤 아이디어에 대한 스크립팅에 매우 익숙합니다. 대단히 감사합니다.
Re: 열려 있는 여러 .jmp 데이터 테이블을 .csv 파일로 저장하려면 어떻게 해야 합니까?매우 감사합니다. 그 스크립트는 내가 찾던 것입니다!
Re: 열려 있는 여러 .jmp 데이터 테이블을 .csv 파일로 저장하려면 어떻게 해야 합니까?정돈된. 각 데이터 테이블의 모든 데이터를 무차별적으로 캡처하려는 경우 PMroz의 스크립트가 완벽하게 작동합니다. 내가 제공한 스크립트를 사용하면 기록할 열을 선택할 수 있으므로 좀 더 제어할 수 있습니다. 필요한 경우 특정 행이나 특정 셀을 선택하도록 조정할 수도 있습니다. 해당 수준의 제어가 필요한 경우 여러 데이터 테이블을 선택하기 위해 스크립트의 코드를 PMroz의 스크립트에 삽입할 수 있어야 합니다.
Re: 열려 있는 여러 .jmp 데이터 테이블을 .csv 파일로 저장하려면 어떻게 해야 합니까?dt1 = 열려 있는 ( "$sample_data\Big Class.jmp" ) ;
dt2 = 열려 있는 ( "$sample_data\Bands Data.jmp" ) ;
dt3 = 열려 있는 ( "$sample_data\자동 원시 데이터.jmp" ) ;
dt4 = 열려 있는 ( "$sample_data\Fitness.jmp" ) ;
openDT = {} ;
을 위한 ( 나 = 1 , 나 <= N 테이블 () , 나 ++,
에 집어 넣다 ( openDT , 데이터 테이블 ( 나 ) )
) ;
file_dir = "c:\임시\" ;
을 위한 ( 나 = 1 , 나 <= N개 항목 ( openDT ) , 나 ++,
one_name = openDTS [ 나 ] << 이름을 얻다 ;
파일 경로 = file_dir || one_name || ".csv" ;
openDTS [ 나 ] << 구하다 ( 파일 경로 ) ;
) ;
Re: 열려 있는 여러 .jmp 데이터 테이블을 .csv 파일로 저장하려면 어떻게 해야 합니까?스크립트에 감사드립니다. 나는 그것을 시도하고 .jmp 파일 중 하나에서 작업했습니다. 이제 문제는 원래 해당 jmp 테이블과 동일한 이름을 가진 .csv 파일로 저장해야 하는 400개 이상의 jmp 테이블이 있다는 것입니다. 이 작업을 수행하는 방법을 알 수 없습니다.
Re: 열려 있는 여러 .jmp 데이터 테이블을 .csv 파일로 저장하려면 어떻게 해야 합니까?확장자가 .csv인 경로를 제공하면 csv 파일로 저장됩니다.
dt = 새 테이블 ( "CSV 예시" , 행 추가 ( 삼 ) ,
새 열 ( "열 1" , 숫자 , 마디 없는 , 체재 ( "최상의" , 12 ) , 값 설정 ( [ 1 , 2 , 삼 ] ) ) ,
새 열 ( "열 2" , 성격 , 명사 같은 , 값 설정 ( { "ㅏ" , "비" , "씨" } ) )
) ;
fp = "c:\temp\csv_example.csv" ;
dt << 구하다 ( fp ) ;
Re: 열려 있는 여러 .jmp 데이터 테이블을 .csv 파일로 저장하려면 어떻게 해야 합니까?이상적으로 이것은 간단한 한 줄 수정이지만 이것을 살펴보면 그렇지 않은 것 같습니다. 구하다 그리고 다른 이름으로 저장 특히 JMP 데이터 테이블을 저장하십시오. 경로/파일 이름 외에는 파일 유형과 같은 해당 기능에 대한 추가 매개변수가 없습니다. 또 다른 파일 출력 기능이 있는데, 텍스트 파일 저장 , 하지만 특정 문자열만 텍스트 파일로 출력합니다. 다행히 저는 프로그래밍 경험이 풍부하여 대부분의 프로그래밍 언어가 이런 방식으로 CSV 파일을 생성하므로 이 작업을 수행하는 방법은 약간 생각한 후에 나에게 다소 간단했습니다.
아래는 원하는 것을 달성하는 스크립트입니다. 데이터 테이블에 맞게 조정하면 됩니다. 데이터 테이블에서 특정 열을 지정해야 합니다. 이 스크립트가 하는 일은 먼저 데이터 테이블의 행 수를 결정하는 것입니다. 그런 다음 For 루프를 사용하여 데이터 테이블의 각 행에 있는 특정 열에서 데이터를 캡처하고 텍스트 파일에 씁니다. 첫 번째 행에서 새 파일이 생성되거나 기존 파일을 덮어씁니다. 나머지 모든 행의 경우 데이터가 기존 파일에 추가됩니다. 또한 하나의 연속된 데이터 행인 파일을 사용하지 않도록 파일의 마지막 행을 제외한 모든 행에 줄 바꿈이 추가됩니다.
이러한 방식으로 텍스트 파일을 작성해야 하는 한 가지 이점은 특정 데이터만 원하는 경우 내보낼 열을 선택할 수 있다는 것입니다. 분명히 이 프로세스는 모든 데이터를 원하고 여러 열이 있는 경우 지루하지만 앞서 언급했듯이 이 기술은 대부분의 프로그래밍 언어에서 일반적입니다.
여기에 기본 이름 ( 1 ) ;
dt = 현재 데이터 테이블 () ;
마지막 행 = N 행 () ;
을 위한 ( 나 = 1 , 나 <= 마지막 행 , 나 ++,
//열 가져오기
위치 = : 위치 [ 나 ] ;
낮 = : 낮 [ 나 ] ;
시간 = : 시간 [ 나 ] ;
세다 = : 세다 [ 나 ] ;
평균 = : 평균 [ 나 ] ;
최대 = : 최대 [ 나 ] ;
//쉼표로 구분된 행 생성
csvRow = 연결 항목 (
{ 위치 , 숯 ( 낮 ) , 숯 ( 시간 ) , 숯 ( 세다 ) , 숯 ( 평균 ) , 숯 ( 최대 )} ,
","
) ;
//행을 텍스트 파일에 저장
만약에 ( 나 == 1 ,
텍스트 파일 저장 ( "$DESKTOP/테스트 파일.csv" , csvRow , 방법 ( "바꾸다" )) ,
텍스트 파일 저장 ( "$DESKTOP/테스트 파일.csv" , csvRow , 방법 ( "추가" ))
) ;
//마지막 행을 제외한 모든 줄 바꿈 내보내기
만약에 ( 나 != 마지막 행 , 텍스트 파일 저장 ( "$DESKTOP/테스트 파일.csv" , "\!N" , 방법 ( "추가" ))) ;
) ;