기본 콘텐츠로 건너뛰기

라벨이 순서형인 게시물 표시

[matplotlib]quiver()함수

[data analysis] 순서형 인코딩(Ordinal encoding)

순서형 인코딩(Ordinal encoding) 순서를 정할 수 있는 범주형 변수의 경우 정수 배열로 인코딩할 수 있습니다. 예를 들어 다음 자료는 3개의 변수와 두개의 샘플을 가집니다. 변수1 변수2 변수3 1 male from US uses Safari 2 female from Europe uses Firefox 각 변수에 따라 알파벳 순으로 순서를 지정할 수 있습니다. male과 female의 경우는 1, 0으로 변환됩니다. OrdinalEncoder() 클래스를 사용합니다. sklearn.preprocessing.OrdinalEncoder(categories="auto") 목록변수를 정수(배열형)로 인코딩하는 클래스 categories를 기본값(auto)으로 지정하면 고유값들을 올림차순으로 지정하고 각각에 대응하는 인덱스로 변환, 동일한 형태의 배열형태로 값을 지정하면 그 값에 대응하여 변환 odeco=preprocessing.OrdinalEncoder() X = [['male', 'from Europe', 'uses Safari'], ['female', 'from US', 'uses Firefox']] odeco.fit(X) print(odeco.categories_) [array(['female', 'male'], dtype=object), array(['from Europe', 'from US'], dtype=object), array(['uses Firefox', 'uses Safari'], dtype=object)] print(odeco.transform(X)) [[1. 0. 1.] [0. 1. 0.]] 위 결과와 같이 각 변수(열) 단위로 순서가 지정됩니다. new=odeco.t...

R factor(요인)

Factor 변수는 명목형(nominal), 순서형(ordinal) 또는 연속형(continumous)으로 설명할 수 있습니다. 명목 변수는 암시적 순서 없이 범주형입니다. 당뇨병(Type1, Type2)은 명목 변수의 예입니다. 데이터에서 Type1이 1로 코딩되고 Type2가 2로 코딩되더라도 순서를 의미하지 않습니다. 순서 변수는 순서를 의미하지만 양은 의미하지 않습니다. 상태(나쁨, 개선됨, 우수함)는 각각의 순서를 지정할 수 있지만 그 순서간의 차이는 명확하지 않습니다. 연속 변수는 특정 범위 내에서 임의의 값을 취할 수 있으며 순서와 양이 모두 암시됩니다. 연령(년)은 연속 변수이며 14.5 또는 22.8 및 그 사이의 값들을 사용할 수 있습니다. 15세인 사람이 14세인 사람보다 한 살 많다는 것을 알고 있습니다. R의 범주형 및 순서형 변수를 요인(factor)이라고 합니다. 요인은 데이터를 시각적으로 분석하고 표시하는 방법을 결정하기 때문에 R에서 중요하며 R의 factor() 함수는 범주형(순서형을 포함) 값을 [1... k] 범위의 정수 벡터로 저장하고(여기서 k는 명목 변수의 고유값 수) 문자열의 내부 벡터(원래 값) 이 정수에 매핑됩니다. 다음 벡터 diabetes는 두 개의 범주로 목록화 할 수 있습니다. 이렇게 데이터의 고유값들을 수준(level)이라고 합니다. factor()함수는 벡터의 값들과 level을 함께 반환합니다. diabetes [1] type1 type2 type1 type1 Levels: type1 type2 순서형 변수의 경우 인자 ordered=TRUE 를 첨가하여 각 목록의 순서를 지정합니다. 이 경우 순서는 기본적으로 알파벳 순으로 지정됩니다. 예를 들어 다음의 경우 excellent=1, improved=2, poor=3으로 순서가 지정됩니다. status [1] poor improved excellent poor Levels: excellent 많은 경우 default인 알파벳 정...