날짜 값에서 단어로 월을 추출하는 방법 및 이상값에 대한 기본 마커를 변경하는 방법은 무엇입니까?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />안녕하세요 여러분.
1.) 전체 열의 날짜 값에서 월을 단어로 추출하려면 어떻게 해야 합니까?
셀 # 1에 날짜가 " 2009년 3월 19일 ". 다음 열에 월을 가져오고 싶습니다. " 3월 ", 이 예에서는.
2.) 이상점에 대한 기본 마커를 변경하는 방법이 있습니까? 예를 들어 이상점 마커를 윤곽선이 있는 삼각형으로 전체적으로 만드는 방법이 있습니까?
도움을 주셔서 감사합니다.
Re: 날짜 값에서 월을 단어로 추출하는 방법 및 이상값에 대한 기본 마커를 변경하는 방법은 무엇입니까?좀 더 정교한 버전:
Names Default To Here( 1 );
// make a sample data table
dt = New Table( "Data",
add rows( 10000 ),
New Column( "it", Numeric, Ordinal, Format( "Best", 8 ), Formula( Row() ) ),
New Column( "Batch", Numeric, Ordinal, Format( "Best", 8 ), formula( Random Integer( 110 ) ) ),
New Column( "y1", Numeric, Continues, Format( "Best", 8 ), formula( Random Lognormal( :Batch / 10, 5 ) ) ),
New Column( "y2", Numeric, Continues, Format( "Best", 8 ), formula( Random Lognormal( :Batch / 10, 5 ) ) ),
New Column( "Out",
Numeric,
Ordinal,
Format( "Best", 8 ),
Set Property( "Value Colors", {0 = -13977687, 1 = -4222943} ),
Color Cell by Value,
formula( 0 )
),
New Column( "Outy1",
Numeric,
Ordinal,
Format( "Best", 8 ),
Set Property( "Value Colors", {0 = -13977687, 1 = -4222943} ),
Color Cell by Value,
formula( 0 )
),
New Column( "Outy2",
Numeric,
Ordinal,
Format( "Best", 8 ),
Set Property( "Value Colors", {0 = -13977687, 1 = -4222943} ),
Color Cell by Value,
formula( 0 )
),
);
dt << run formulas;
Column( dt, "it" ) << delete formula;
Column( dt, "Batch" ) << delete formula;
Column( dt, "y1" ) << delete formula;
Column( dt, "y2" ) << delete formula;
Column( dt, "Out" ) << delete formula;
Column( dt, "Outy1" ) << delete formula;
Column( dt, "Outy2" ) << delete formula;
// now we get to work
// make a list of batches
byvarlist = Associative Array( dt:Batch ) << get keys;
// make a list of columns
cols = dt << get column names( Continuous ); //List all Numeric columns
// loop through the batches
For( i = 1, i <= N Items( byvarlist ), i++,
// select each batch
dt << select where( dt:Batch == byvarlist[i] );
// subset each batch
subdt = dt << Subset( Selected Rows( 1 ) );
// clear selection for smoth workflow
dt << clear select;
// finde outliers in each variable within each batch
For( ii = 1, ii <= N Items( cols ), ii++,
out = Eval(
Parse(
"subdt << get rows where(
subdt:" || Char( cols[ii] ) || " > Col Quantile( subdt:" || Char( cols[ii] ) ||
", 0.75 ) + 1.5 * (Col Quantile( subdt:" || Char( cols[ii] ) || ", 0.75 ) - Col Quantile( subdt:" || Char( cols[ii] ) ||
", 0.25 )) | subdt:" || Char( cols[ii] ) || " <
Col Quantile( subdt:" || Char( cols[ii] ) ||
", 0.25 ) - 1.5 * (Col Quantile( subdt:" || Char( cols[ii] ) || ", 0.75 ) - Col Quantile( subdt:" || Char( cols[ii] ) ||
", 0.25 )));"
)
)`;
Eval( Parse( "column (subdt, \!"Out" || Char( cols[ii] || "\!" )[" || Char( out ) || "] = 1;" ) ) );
// also indicate the global outlier
Column( subdt, "Out" )[out] = 1;
//wait (0.00001);
);
// update original data table with new information for the batch
subdt << delete columns( "Batch" );
subdt << delete columns( cols );
dt << Update( With( subdt ), Match Columns( :it = :it ) );
Close( subdt, No Save );
//Wait( 0.00001 );
);
dt << color by column( :Out );
Re: 날짜 값에서 월을 단어로 추출하는 방법 및 이상값에 대한 기본 마커를 변경하는 방법은 무엇입니까?VLookup(false) 기능처럼 작동합니다.
감사해요, 이안 !
Re: 날짜 값에서 월을 단어로 추출하는 방법 및 이상값에 대한 기본 마커를 변경하는 방법은 무엇입니까?더 좋지는 않을 수도 있지만 대안으로 'Month()'를 사용하고 값 레이블 속성을 정의할 수도 있습니다.
새 테이블 ( "월" ,
행 추가 ( 1 ) ,
새 열 ( "날짜" ,
숫자 ,
"마디 없는" ,
체재 ( "월/일/년" , 12 ) ,
입력 형식 ( "월/일/년" ) ,
공식 ( 오늘 () )
) ,
새 열 ( "월" ,
숫자 ,
"마디 없는" ,
체재 ( "최상의" , 12 ) ,
공식 ( 월 ( : 날짜 ) ) ,
값 라벨 (
{ 1 = "1월" , 2 = "2월" , 삼 = "3월" , 4 = "4월" , 5 = "5월" , 6
= "6월" , 7 = "칠월" , 8 = "팔월" , 9 = "구월" , 10 = "십월" , 11
= "십일월" , 12 = "12월" }
) ,
값 레이블 사용 ( 1 )
)
)
Re: 날짜 값에서 월을 단어로 추출하는 방법 및 이상값에 대한 기본 마커를 변경하는 방법은 무엇입니까?멋진 스크립트, 론 !
Fit Y by X, Distribution & Graph Builder에서 사용해 보았는데 정말 매력적이었습니다 *
JMP, Ron & Jim에 대한 귀하의 전문 지식에 정말 감사하고 존경합니다.
Re: 날짜 값에서 월을 단어로 추출하는 방법 및 이상값에 대한 기본 마커를 변경하는 방법은 무엇입니까?매우 감사, 짐 !
나는 포기하고 Substring() 또는 Left()에 정착하려고 했습니다.
귀하의 솔루션은 완벽하게 작동합니다.
- 랜디
Re: 날짜 값에서 월을 단어로 추출하는 방법 및 이상값에 대한 기본 마커를 변경하는 방법은 무엇입니까?원하는 작업을 수행하는 데 권장되지 않는 또 다른 방법은 그래프에서 선택한 행에 대한 기본 설정을 변경하는 것입니다. 일부 다른 명령은 기본적으로 테이블의 모든 행 대신 선택 항목을 사용하므로 선택 항목 작업을 권장하지 않습니다. 하지만 여전히 이것을 시도해 볼 수 있습니다:
이름의 기본값은 여기에 있습니다. ( 1 ) ;
//주의: 기본 설정을 변경하면
//JMP의 기본 동작에 영향을 줍니다.
환경설정 ( 마커 선택 모드 ( 1 ) ) ; // 파일>> 환경 설정 메뉴에서도 이 작업을 수행할 수 있으며 한 번만 수행하면 됩니다.
dt = 열려 있는 ( "$SAMPLE_DATA/빅 클래스.jmp" ) ;
// 열 목록을 가져옵니다.
열 = dt << 열 이름 가져오기 ( 마디 없는 ) ; //모든 숫자 열 나열
을 위한 ( 나 = 1 , 나 <= N개 품목 ( 열 ) , 나 ++,
밖으로 = 평가 (
구문 분석 (
"dt << 행을 가져옵니다. 여기서(
DT:" || 숯 ( 열 [ 나 ] ) || " > 열 분위수( dt:" || 숯 ( 열 [ 나 ] ) || ", 0.75 ) + 1.5 * (Col Quantile( dt:" ||
숯 ( 열 [ 나 ] ) || ", 0.75 ) - Col Quantile( dt:" || 숯 ( 열 [ 나 ] ) || ", 0.25 )) | dt:" || 숯 ( 열 [ 나 ] ) || " <
열 분위수( dt:"
|| 숯 ( 열 [ 나 ] ) || ", 0.25 ) - 1.5 * (Col Quantile( dt:" || 숯 ( 열 [ 나 ] ) || ", 0.75 ) - Col Quantile( dt:" || 숯 ( 열 [ 나 ] ) ||
", 0.25 )));"
)
) `;
선택된 = dt << 행 선택 ( 밖으로 ) ;
선택된 << 마커 ( 17 ) ;
//선택됨 << 마커 크기( 5 ); // 그런 옵션은 없습니다
) ;
// 어떻게 보이는지 확인
새창 ( "산출" ,
h 목록 상자 (
분포 (
지속적인 배포 ( 열 ( : 키 ) , 퍼센트 표시 ( 1 ) , 요약 통계 사용자 정의 ( 합집합 ( 1 ) ) ) ,
지속적인 배포 ( 열 ( : 무게 ) , 퍼센트 표시 ( 1 ) , 요약 통계 사용자 정의 ( 합집합 ( 1 ) ) ) ,
SendToReport (
보내다 ( { "배포" , "키" } , "분포 히스토그램" , 프레임박스 , { DispatchSeg ( 히스트 세그먼트 ( 1 ) , 히스토그램 색상 ( 53 ) )} ) ,
보내다 ( { "배포" , "무게" } , "분포 히스토그램" , 프레임박스 , { DispatchSeg ( 히스트 세그먼트 ( 1 ) , 히스토그램 색상 ( 53 ) )} )
)
) ,
이변량 ( 와이 ( : 키 ) , 엑스 ( : 무게 ) )
)
) ;
Re: 날짜 값에서 월을 단어로 추출하는 방법 및 이상값에 대한 기본 마커를 변경하는 방법은 무엇입니까?안녕 라벨라도 ,
텍사스넬슨 두 가지 주제에 모두 맞습니다. 그러나 일변량 이상값(무차별 스타일)에 대한 마커를 설정하려면 다음을 시도해 볼 수 있습니다.
모든 열에서 이상치인 행이 이제 특수 표시를 갖게 된다는 점은 장점(또는 단점)이 될 수 있습니다. 분석을 진행하면서 특정 열의 이상값을 표시하도록 이를 수정할 수 있습니다.
행운을 빌어요!
론
이름의 기본값은 여기에 있습니다. ( 1 ) ;
dt = 열려 있는 ( "$SAMPLE_DATA/빅 클래스.jmp" ) ;
// 열 목록을 가져옵니다.
열 = dt << 열 이름 가져오기 ( 마디 없는 ) ; //모든 숫자 열 나열
을 위한 ( 나 = 1 , 나 <= N개 품목 ( 열 ) , 나 ++,
밖으로 = 평가 (
구문 분석 (
"dt << 행을 가져옵니다. 여기서(
DT:" || 숯 ( 열 [ 나 ] ) || " > 열 분위수( dt:" || 숯 ( 열 [ 나 ] ) || ", 0.75 ) + 1.5 * (Col Quantile( dt:" ||
숯 ( 열 [ 나 ] ) || ", 0.75 ) - Col Quantile( dt:" || 숯 ( 열 [ 나 ] ) || ", 0.25 )) | dt:" || 숯 ( 열 [ 나 ] ) || " <
열 분위수( dt:"
|| 숯 ( 열 [ 나 ] ) || ", 0.25 ) - 1.5 * (Col Quantile( dt:" || 숯 ( 열 [ 나 ] ) || ", 0.75 ) - Col Quantile( dt:" || 숯 ( 열 [ 나 ] ) ||
", 0.25 )));"
)
)` ;
선택된 = dt << 행 선택 ( 밖으로 ) ;
선택된 << 마커 ( "*" ) ;
선택된 << 선택 취소 ;
) ;
// 어떻게 보이는지 확인
분포 (
지속적인 배포 ( 열 ( : 키 ) , 퍼센트 표시 ( 1 ) , 요약 통계 사용자 정의 ( 합집합 ( 1 ) ) ) ,
지속적인 배포 ( 열 ( : 무게 ) , 퍼센트 표시 ( 1 ) , 요약 통계 사용자 정의 ( 합집합 ( 1 ) ) ) ,
SendToReport (
보내다 ( { "배포" , "키" } , "분포 히스토그램" , 프레임박스 , { DispatchSeg ( 히스트 세그먼트 ( 1 ) , 히스토그램 색상 ( 53 ) )} ) ,
보내다 ( { "배포" , "무게" } , "분포 히스토그램" , 프레임박스 , { DispatchSeg ( 히스트 세그먼트 ( 1 ) , 히스토그램 색상 ( 53 ) )} )
)
) ;
Re: 날짜 값에서 월을 단어로 추출하는 방법 및 이상값에 대한 기본 마커를 변경하는 방법은 무엇입니까?다음과 같은 결과가 달성되었습니다.

월 열에 다음 수식을 적용하면 다음과 같습니다.

특정 마커를 이상치에 할당하는 방법에 대한 두 번째 질문에 관한 것입니다.문제는 마커가 열 내의 셀이 아닌 행에 대한 행 상태로 할당된다는 것입니다.따라서 각 열에 대한 이상값 표시를 전역적으로 할당할 수는 없습니다.