R에서 데이터 그룹화를 수행하는 방법: 예 포함


R에서 데이터 그룹화를 수행하려면 다음 두 가지 방법 중 하나를 사용할 수 있습니다.

방법 1: cut() 함수 사용

 library (dplyr)

#perform binning with custom breaks
df %>% mutate(new_bin = cut(variable_name, breaks=c(0, 10, 20, 30)))

#perform binning with specific number of bins
df %>% mutate(new_bin = cut(variable_name, breaks= 3 ))

방법 2: ntile() 함수 사용

 library (dplyr)

#perform binning with specific number of bins
df %>% mutate(new_bin = ntile(variable_name, n= 3 ))

다음 예에서는 다음 데이터 프레임을 사용하여 실제로 각 메서드를 사용하는 방법을 보여줍니다.

 #create data frame
df <- data. frame (points=c(4, 4, 7, 8, 12, 13, 15, 18, 22, 23, 23, 25),
                 assists=c(2, 5, 4, 7, 7, 8, 5, 4, 5, 11, 13, 8),
                 rebounds=c(7, 7, 4, 6, 3, 8, 9, 9, 12, 11, 8, 9))

#view head of data frame
head(df)

  points assists rebounds
1 4 2 7
2 4 5 7
3 7 4 4
4 8 7 6
5 12 7 3
6 13 8 8

예제 1: cut() 함수를 사용하여 데이터 그룹화 수행

다음 코드는 특정 구분선이 있는 cut() 함수를 사용하여 points 변수에 대한 데이터 그룹화를 수행하는 방법을 보여줍니다.

 library (dplyr)

#perform data binning on variable points
df %>% mutate(points_bin = cut(points, breaks=c(0, 10, 20, 30)))

   points assists rebounds points_bin
1 4 2 7 (0.10]
2 4 5 7 (0.10]
3 7 4 4 (0.10]
4 8 7 6 (0.10]
5 12 7 3 (10.20]
6 13 8 8 (10.20]
7 15 5 9 (10.20]
8 18 4 9 (10.20]
9 22 5 12 (20.30]
10 23 11 11 (20.30]
11 23 13 8 (20.30]
12 25 8 9 (20.30]

데이터 프레임의 각 행은 포인트 열의 값을 기준으로 세 그룹 중 하나로 배치되었습니다.

또한 포인트 열의 최소값에서 최대값까지 동일한 너비의 상자를 만드는 데 사용할 점프 수를 지정할 수도 있습니다.

 library (dplyr)

#perform data binning on variable points
df %>% mutate(points_bin = cut(points, breaks= 3 ))

   points assists rebounds points_bin
1 4 2 7 (3.98.11]
2 4 5 7 (3.98.11]
3 7 4 4 (3.98.11]
4 8 7 6 (3.98.11]
5 12 7 3 (11.18]
6 13 8 8 (11.18]
7 15 5 9 (11.18]
8 18 4 9 (11.18]
9 22 5 12 (18.25]
10 23 11 11 (18.25]
11 23 13 8 (18.25]
12 25 8 9 (18.25]

예제 2: ntile() 함수를 사용하여 데이터 그룹화 수행

다음 코드는 특정 수의 결과 그룹과 함께 ntile() 함수를 사용하여 points 변수에 대한 데이터 그룹화를 수행하는 방법을 보여줍니다.

 library (dplyr)

#perform data binning on variable points
df %>% mutate(points_bin = ntile(points, n= 3 ))

   points assists rebounds points_bin
1 4 2 7 1
2 4 5 7 1
3 7 4 4 1
4 8 7 6 1
5 12 7 3 2
6 13 8 8 2
7 15 5 9 2
8 18 4 9 2
9 22 5 12 3
10 23 11 11 3
11 23 13 8 3
12 25 8 9 3

각 행에는 포인트 열 값을 기준으로 1부터 3까지의 상자가 할당되었습니다.

Bin의 범위를 나타내는 간격이 아닌 각 행에 정수 값을 표시하려는 경우 ntile() 함수를 사용하는 것이 가장 좋습니다.

추가 리소스

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

R에서 데이터 프레임의 값을 조건부로 바꾸는 방법
R에서 절사 평균을 계산하는 방법
R에서 조건부 평균을 계산하는 방법

의견을 추가하다

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