R에서 라벨 인코딩을 수행하는 방법(예제 포함)


종종 기계 학습에서는 범주형 변수를 알고리즘에서 쉽게 사용할 수 있는 숫자 형식으로 변환하려고 합니다.

이를 수행하는 한 가지 방법은 각 범주형 값에 알파벳 순서에 따라 정수 값을 할당하는 레이블 인코딩을 사용하는 것입니다 .

예를 들어 다음 스크린샷에서는 Team 이라는 범주형 변수의 각 고유 값을 알파벳 순서에 따라 정수 값으로 변환하는 방법을 보여줍니다.

R에서 레이블 코딩을 수행하는 두 가지 일반적인 방법이 있습니다.

방법 1: 기본 R 사용

 df$my_var <- as. numeric (factor(df$my_var))

방법 2: CatEncoders 패키지 사용

 library (CatEncoders)

#define original categorical labels
labs = LabelEncoder. fit (df$my_var)

#convert labels to numeric values
df$team = transform(labs, df$my_var)

다음 예에서는 각 방법을 실제로 사용하는 방법을 보여줍니다.

예시 1: Base R을 사용한 인코딩 라벨

다음 코드는 R base Factor() 함수를 사용하여 team 이라는 범주형 변수를 숫자 변수로 변환하는 방법을 보여줍니다.

 #create data frame
df <- data. frame (team=c('A', 'A', 'B', 'B', 'B', 'B', 'C', 'C'),
                 points=c(25, 12, 15, 14, 19, 23, 25, 29))

#view data frame
df

  team points
1 to 25
2 to 12
3 B 15
4 B 14
5 B 19
6 B 23
7 C 25
8 C 29

#perform label encoding on team variable
df$team <- as. numeric (factor(df$team))

#view updated data frame
df

  team points
1 1 25
2 1 12
3 2 15
4 2 14
5 2 19
6 2 23
7 3 25
8 3 29

열의 새 값을 참고하세요.

  • “A”는 1 이 되었습니다.
  • “B”는 2 가 되었습니다.
  • “C”는 3 이 되었습니다.

열을 범주형 변수에서 숫자 변수로 성공적으로 변환했습니다.

예제 2: CatEncoders 패키지를 사용한 인코딩 라벨

다음 코드는 CatEncoders() 패키지의 함수를 사용하여 team 이라는 범주형 변수를 숫자 변수로 변환하는 방법을 보여줍니다.

 library (CatEncoders)

#create data frame
df <- data. frame (team=c('A', 'A', 'B', 'B', 'B', 'B', 'C', 'C'),
                 points=c(25, 12, 15, 14, 19, 23, 25, 29))

#define original categorical labels
labs = LabelEncoder. fit (df$team)

#convert labels to numeric values
df$team = transform(labs, df$team)

#view updated data frame
df

  team points
1 1 25
2 1 12
3 2 15
4 2 14
5 2 19
6 2 23
7 3 25
8 3 29

이번에도 열에 다음과 같은 새로운 값을 생성했습니다.

  • “A”는 1 이 되었습니다.
  • “B”는 2 가 되었습니다.
  • “C”는 3 이 되었습니다.

이는 이전 예제의 결과와 일치합니다.

이 방법을 사용하면 inverse.transform()을 사용하여 열의 원래 값을 가져올 수도 있습니다.

 #display original team labels
reverse. transform (labs, df$team)

[1] “A” “A” “B” “B” “B” “B” “C” “C”

추가 리소스

다음 튜토리얼에서는 R에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

R의 계속에서 범주형 변수를 만드는 방법
R에서 범주형 변수를 만드는 방법
R에서 범주형 변수를 숫자로 변환하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다