여러 테이블을 열고, 메모리에 병합하고, 소계의 결과를 파악하려면 어떻게해야합니까?예를 들어 "c : \ 1 \"경로에 "Big Class.jmp"구조처럼 보이는 5 개의 데이터 파일이 있습니다.
"Concatenate"없이 메모리에있는 5 개 파일에 대해 "age"열에 따라 "height"열의 데이터를 분류하고 요약하는 방법.
다음 코드에서 구현 된 것처럼 효과를 얻으십시오.
dir = "c:\1\";
Fs = Files In Directory( dir );
For( d = 1, d <= 5, d++,
d1 = Open( dir || fs[d] );
If( d == 1,
d2 = d1,
d2 << Concatenate( Data Table( d1 ), Append to first table );
Close( d1, nosave );
);
);
d1 = d2<< Summary(
Group( :age ),
Sum( :height ),
Freq( "None" ),
Weight( "None" ),
Link to original data table( 0 )
);
스크립팅Re : 어떻게 여러 테이블을 열고, 메모리에 병합하고, 소계의 결과를 알아낼 수 있습니까?다음은 코드의 메모리 버전입니다.시각적 개체를 만들지 않거나 시각적 구성 요소에 대한 메모리를 차지하지 않으며 결과로 2 개의 메모리 항목, 1 개의 목록 및 1 개의 행렬을 만듭니다.
names default to here(1);
dt = open("$SAMPLE_DATA/big class.jmp",private);
dt << set name("zippy");
dt2 = open("$SAMPLE_DATA/big class.jmp",private);
dt3 = dt2<< Concatenate( dt,private );
close(dt,nosave);
close(dt2,nosave);
summarize( dt3, bygroup = by(:age), heightSum = sum(:height));
close(dt3,nosave);
show(bygroup,heightSum);Re : 어떻게 여러 테이블을 열고, 메모리에 병합하고, 소계의 결과를 알아낼 수 있습니까?짐 감사합니다!
이러한 파일이 100 개있는 경우 파일 이름을 "001.JMP-100.JMP"로 설정합니다.
60 개의 파일을 파일명 순서에 따라 한 번에 접합, 정렬, 요약하고 결과를 출력하므로 41 개의 결과가 있습니다.
첫 번째 Concatenate는 위의 방법에 따라 001.Jmp-060.JMP 파일에서 첫 번째 결과를 가져 오는 것입니다.
"002.Jmp-061.JMP"파일의 두 번째 처리를 위해 이번에는 더 빨리 결합하고 요약하는 방법은 무엇입니까?
Re : 어떻게 여러 테이블을 열고, 메모리에 병합하고, 소계의 결과를 알아낼 수 있습니까?- 처음 60 개 연결
- "소스 열 만들기"옵션이 지정되어 있는지 확인합니다.
- 통계 생성
- 새 파일을 읽고 1-60 테이블에 연결
- "소스 열"을 사용하여 데이터 테이블 1에서 모든 행을 선택합니다.
- 통계 생성
- 100 개의 파일을 모두 읽고 분석 할 때까지 3-5 단계를 반복합니다.