R에서 범주형 변수를 만드는 방법(예제 포함)
다음 구문을 사용하여 R에서 범주형 변수를 만들 수 있습니다.
#create categorical variable from scratch cat_variable <- factor(c(' A ', ' B ', ' C ', ' D ')) #create categorical variable (with two possible values) from existing variable cat_variable <- as. factor ( ifelse (existing_variable < 4, 1, 0)) #create categorical variable (with multiple possible values) from existing variable cat_variable <- as. factor ( ifelse (existing_variable < 3, ' A ', ifelse (existing_variable < 4, ' B ', ifelse (existing_variable < 5, ' C ', ifelse (existing_variable < 6, ' D ',0)))))
다음 예에서는 이 구문을 실제로 사용하는 방법을 보여줍니다.
예 1: 처음부터 범주형 변수 만들기
다음 코드는 처음부터 범주형 변수를 만드는 방법을 보여줍니다.
#create data frame df <- data. frame (var1=c(1, 3, 3, 4, 5), var2=c(7, 7, 8, 3, 2), var3=c(3, 3, 6, 10, 12), var4=c(14, 16, 22, 19, 18)) #view data frame df var1 var2 var3 var4 1 1 7 3 14 2 3 7 3 16 3 3 8 6 22 4 4 3 10 19 5 5 2 12 18 #add categorical variable named 'type' to data frame df$type <- factor(c(' A ', ' B ', ' B ', ' C ', ' D ')) #view updated data frame df var1 var2 var3 var4 type 1 1 7 3 14 A 2 3 7 3 16 B 3 3 8 6 22 B 4 4 3 10 19 C 5 5 2 12 18 D
예 2: 기존 변수에서 범주형 변수(두 개의 값 포함) 만들기
다음 코드는 데이터 프레임의 기존 변수에서 범주형 변수를 만드는 방법을 보여줍니다.
#create data frame df <- data. frame (var1=c(1, 3, 3, 4, 5), var2=c(7, 7, 8, 3, 2), var3=c(3, 3, 6, 10, 12), var4=c(14, 16, 22, 19, 18)) #view data frame df var1 var2 var3 var4 1 1 7 3 14 2 3 7 3 16 3 3 8 6 22 4 4 3 10 19 5 5 2 12 18 #add categorical variable named 'type' using values from 'var4' column df$type <- as. factor ( ifelse (df$var1 < 4, 1, 0)) #view updated data frame df var1 var2 var3 var4 type 1 1 7 3 14 1 2 3 7 3 16 1 3 3 8 6 22 1 4 4 3 10 19 0 5 5 2 12 18 0
ifelse() 문을 사용하여 다음 값을 사용하는 “type”이라는 새로운 범주형 변수를 만들었습니다.
- ‘var1’ 열의 값이 4보다 작은 경우 1입니다 .
- ‘var1’ 열의 값이 4 이상인 경우 0입니다 .
예 3: 기존 변수에서 범주형 변수 (여러 값 포함) 만들기
다음 코드는 데이터 프레임의 기존 변수에서 범주형 변수(여러 값 포함)를 만드는 방법을 보여줍니다.
#create data frame df <- data. frame (var1=c(1, 3, 3, 4, 5), var2=c(7, 7, 8, 3, 2), var3=c(3, 3, 6, 10, 12), var4=c(14, 16, 22, 19, 18)) #view data frame df var1 var2 var3 var4 1 1 7 3 14 2 3 7 3 16 3 3 8 6 22 4 4 3 10 19 5 5 2 12 18 #add categorical variable named 'type' using values from 'var4' column df$type <- as. factor ( ifelse (df$var1 < 3, ' A ', ifelse (df$var1 < 4, ' B ', ifelse (df$var1 < 5, ' C ', ifelse (df$var1 < 6, ' D ', ' E '))))) #view updated data frame df var1 var2 var3 var4 type 1 1 7 3 14 A 2 3 7 3 16 B 3 3 8 6 22 B 4 4 3 10 19 C 5 5 2 12 18 D
ifelse() 문을 사용하여 다음 값을 사용하는 “type”이라는 새로운 범주형 변수를 만들었습니다.
- ‘var1’ 열의 값이 3보다 작은 경우 ‘ A ‘입니다.
- 그렇지 않고 ‘var1’ 열의 값이 4보다 작으면 ‘ B ‘입니다.
- 그렇지 않고 ‘var1’ 열의 값이 5보다 작으면 ‘ C ‘입니다.
- 그렇지 않고 ‘var1’ 열의 값이 6보다 작으면 ‘ D ‘입니다.
- 그렇지 않으면 ‘ E ‘입니다.