반응형
R - aggregate / separate_rows
데이터 처리 도중, 특정 key 를 기준으로, 문자를 리스트형태로 바꾸고 싶을 때가 있다.
이 때, R 에서 사용할 수 있는 함수가 aggregate 와 separate_rows 이다.
(hive 에서는 collect_set 과 explode 함수가 비슷한 기능을 함)
왼쪽 테이블 -> 오른쪽 테이블로: separate_rows
오른쪽 테이블 -> 왼쪽 테이블로: aggregate
library(tidyverse)
df <- data.frame(Family_ID = 1:2,
name = c("Smith, John", "Walker, Mike"),
stringsAsFactors = FALSE)
df2 <- df %>% separate_rows(name)
df2
# Family_ID name
# 1 Smith
# 1 John
# 2 Walker
# 2 Mike
df3 <- aggregate(name ~ Family_ID, df2, toString)
df3
# Family_ID name
# 1 Smith, John
# 2 Walker, Mike
반응형
'Tools > R' 카테고리의 다른 글
R - na to zero (0) | 2023.03.09 |
---|---|
R - 컬럼별 동일한 함수 적용을 위한 lapply 테크닉 (0) | 2022.09.05 |
R - 난수 생성을 일별로 변경하기 (0) | 2022.06.21 |
arulesViz 패키지 사용시 한글 안 나오는 문제 (0) | 2021.08.09 |
R 에서 한글 인코딩 파일 쉽게 읽어오는 팁 (0) | 2019.10.27 |