Dplyr에서 ungroup()을 사용하는 방법(예제 포함)


group_by() 함수를 사용하여 그룹당 하나의 변수를 요약한 후 dplyr의 ungroup () 함수를 사용하여 행의 그룹을 해제할 수 있습니다.

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

예: dplyr에서 ungroup()을 사용하는 방법

R에 다음과 같은 데이터 프레임이 있다고 가정합니다.

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
                 dots=c(14, 18, 22, 26, 36, 34),
                 assists=c(5, 4, 4, 8, 7, 3))

#view data frame
df

  team points assists
1 to 14 5
2 to 18 4
3 to 22 4
4 B 26 8
5 B 36 7
6 B 34 3

이제 다음 코드를 사용하여 팀별 로 그룹화된 평균 점수 값을 계산한다고 가정합니다.

 library (dplyr)

#calculate mean of points, grouped by team
df_new <- df %>%
            group_by(team) %>%
            summarize(mean_points = mean(points)) %>%
            A group()

#view results
df_new

# A tibble: 2 x 2
  team mean_points
         
1 to 18
2 B 32

이 구문을 사용하면 팀별 로 그룹화된 포인트 의 평균 값을 계산할 수 있지만 어시스트 열이 손실되었습니다.

도우미 열을 유지하려면 summary() 대신 mutate()를 사용하고 마지막에는 ungroup()을 계속 사용할 수 있습니다.

 library (dplyr)

#calculate mean of points, grouped by team
df_new <- df %>%
            group_by(team) %>%
            mutate(mean_points = mean(points)) %>%
            A group()

#view results
df_new

# A tibble: 6 x 4
  team points assists mean_points
              
1 A 14 5 18
2 A 18 4 18
3 A 22 4 18
4 B 26 8 32
5 B 36 7 32
6 B 34 3 32

이번에는 어시스트 열을 유지할 수 있으며 mutate() 함수를 사용하여 각 팀의 평균 점수 값을 표시하는 Mean_points 라는 새 열을 추가했습니다.

ungroup() 함수도 사용했기 때문에 그룹화된 변수의 영향을 받는 계산에 대해 걱정하지 않고 이 새 데이터 프레임에서 계산을 수행할 수 있습니다.

ungroup() 함수를 사용하지 않으면 데이터 프레임의 행이 계속 그룹화되어 나중에 다른 계산을 수행할 때 의도하지 않은 결과가 발생할 수 있습니다.

추가 리소스

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

dplyr을 사용하여 고유 값을 필터링하는 방법
dplyr을 사용하여 여러 조건으로 필터링하는 방법
R의 열에서 발생 횟수를 계산하는 방법

의견을 추가하다

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