셀 값을 기준으로 위치 및 하위 집합 선택안녕,
파일에서 열 이름을 가져온 다음 새 하위 집합 테이블을 만들고 모든 숫자 열의 평균과 SD를 찾는 코드가 아래에 있습니다. 평균 및 SD 코드는 작동하지만 하위 집합 테이블을 전혀 생성하지 않습니다. 어떤 아이디어가 있나요? 게시된 모든 토론과 비교하여 이를 확인했습니다. 다음으로 시작 및 포함 조건을 모두 시도했습니다.
샘플 파일은 다음과 같습니다.
| 일련번호 |
암호 |
영역 |
키 |
무게 |
나이 |
| 1 |
55414 |
미니애폴리스 N |
|
|
|
| 2 |
55455 |
미니애폴리스 S |
|
|
|
| 3 |
4446804e |
미니애폴리스 E |
|
|
|
| 4 |
4389568 |
미니애폴리스 여 |
|
|
| 5 |
g58934 |
세인트 폴 N |
|
|
|
| 6 |
4989034 |
세인트 폴 E |
|
|
|
| 7 |
3496f |
세인트 폴 S |
|
|
|
| 8 |
5404390sfd |
미니애폴리스 E |
|
|
|
| 9 |
43960 |
미니애폴리스 N |
|
|
|
| 10 |
569043 |
세인트 폴 N |
|
|
|
| 11 |
6590549 |
세인트 폴 E |
|
|
|
dt3 = Open( "file_28.jmp" );
colcmp = "Area";
col = dt3 << get column names( string );
nc = N Items( col );
Show( nc );
For( j = 1, j <= nc, j++,
colname = Column( j ) << Get Name;
Show( colname );
If( Contains( colname, colcmp ),
dt3 << Select Where( Starts With( :colname, "Minneapolis" ) );
dt3 << Subset( Output Table Name( "MPLS" ), Selected Rows( 1 ), Selected columns only( 0 ) );
dt3 << Select Where( Starts With( :colname, "St. Paul" ) );
dt3 << Subset( Output Table Name( "STP" ), Selected Rows( 1 ), Selected columns only( 0 ) );
);
);
dtPM = Data Table( "MPLS" );
a = "Numeric";
colPM = dtPM << get column names( string );
ncPM = N Items( colPM );
Show( ncPM );
For( k = 1, k <= ncPM, k++,
colname = Column( k ) << Get Name;
Show( colname );
which = dtPM:colname << Get Data Type;
Show( which );
If( Contains( which, a ),
count = count + 1;
colnames2[count] = colname || "_MPLS";
Mean1[count] = Col Mean( :Column( k ) );
Std1[count] = Col Std Dev( :Column( k ) );
Show( Mean1[count] );
);
);
데이터 혼합 및 정리Re: 셀 값을 기반으로 위치 및 하위 집합 선택짐 감사합니다. 열 이름을 저장하는 변수를 함수에 전달하는 방법에 대해 혼란을 겪고 있었고 실제로 예제를 찾을 수 없었습니다. 이렇게 하면 오류가 해결되었습니다.
Re: 셀 값을 기반으로 위치 및 하위 집합 선택JMP에게 :colname이라는 열을 찾도록 지시하고 있습니다.이 참조에서 JMP는 :colname 이상의 열 참조를 평가하지 않습니다.당신이해야 할 일은 As Column() 함수에서 이름을 지정하는 것입니다.그러면 작동합니다
For( j = 3, j <= nc, j++,
colname = Column( j ) << Get Name;
Show( colname );
If( Contains( colname, colcmp ),
dt3 << Select Where( Starts With( as column(colname), "Minneapolis" ) );
dt3 << Subset( Output Table Name( "MPLS" ), Selected Rows( 1 ), Selected columns only( 0 ) );
dt3 << Select Where( Starts With( as column(colname), "St. Paul" ) );
dt3 << Subset( Output Table Name( "STP" ), Selected Rows( 1 ), Selected columns only( 0 ) );
);
);