반응형
R 에서 특정 변수를 카테고리화 하고 싶을 때가 많다.
다양한 방법이 있지만,
아래 cut 함수를 사용하는 코드로 0~5, 6~10, 11~15, ... >100 으로 카테고리화가 가능하다.
cat <- seq(0,100,5)
df$cat <- cut(df$x, breaks = c(cat, Inf), labels = cat)
df$cat <- factor(df$cat, levels=cat)
-> breaks 의 element 보다 labels 의 elements 의 갯수가 1개 적다.
좀 더 일반적으로는 다음과 같다.
# 예시 데이터 생성
set.seed(123)
data <- data.frame(id = 1:10, value = rnorm(10, mean = 50, sd = 10))
# 카테고리화
data$cat <- cut(data$value, breaks = c(0, 25, 50, 75, 100), labels = c("low", "medium-low", "medium-high", "high"))
반응형
'Tools > R' 카테고리의 다른 글
R - dictionary 만들기 (0) | 2023.03.15 |
---|---|
R - lag 변수 만들기 (0) | 2023.03.10 |
R - 반복문 대신 사용하는 lapply 패턴 (0) | 2023.03.10 |
R - na to zero (0) | 2023.03.09 |
R - 컬럼별 동일한 함수 적용을 위한 lapply 테크닉 (0) | 2022.09.05 |
댓글 0개