본문 바로가기
R

R ) group_by이용해서 한 셀에 여러 값 넣기 in r

by C.Mond 2022. 8. 29.
728x90
728x90

안녕하세요 오늘은 group_by를 이용해 그룹지어진 column의 값을 한 셀안에 넣는 방법에 대해 보려고 합니다.

 

df은 다음과 같은 df를 사용하겠습니다.

df <- data.frame(col1=c("A","A","A","A"),
col2=c("B","B","B","B"),
col3=c("가","가","나","다"),
col4=c("사과","배","배","복숭아"))
df

 

df %>%
group_by(col1) %>%
summarise(col3)

위와 같이 group을 엮으면 가,가,나,다가 한 셀에 나오게 구현하는것이 이번에 할것입니다.

그냥 저렇게 하면 될줄 알았는데 아니더군요....ㅠ

 

df %>%
group_by(col1) %>%
summarise(new_col=paste0(col3,collapse = ","))

위와 같이 하면 구현할 수 있습니다.

그리고 group_by에 다중 column을 넣는 방법을 보겠습니다.

df %>%
group_by(col1,col2) %>%
summarise(new_col=paste0(col3,collapse = ","), new_col2=paste0(col4,collapse = ","))

위와 같이 하면 구현할 수 있습니다.

그런데... 

group_by에 다중 column을 넣을때 vector로 넣으니까 안되더군요

이렇게도 되더군요

df %>%
group_by(df[1],df[2]) %>%
summarise(new_col=paste0(col3,collapse = ","), new_col2=paste0(col4,collapse = ","))

이렇게 해도 똑같이 구현이 됩니다.

그럼 df[*]여기 별표안에 벡터를 넣어도 구현되겠죠

728x90
728x90

댓글