R에서 수집 기능을 사용하는 방법(예제 포함)
Tidyr 패키지의 Gather() 함수를 사용하여 여러 열에 걸쳐 키-값 쌍을 “수집”할 수 있습니다.
이 함수는 다음 기본 구문을 사용합니다.
수집(데이터, 키 값 등)
금:
- data : 데이터 프레임의 이름
- key : 생성할 키 컬럼의 이름
- value : 생성할 값 열의 이름
- … : 수집할 열을 지정합니다.
다음 예에서는 이 기능을 실제로 사용하는 방법을 보여줍니다.
예시 1: 두 열의 값 수집
R에 다음과 같은 데이터 프레임이 있다고 가정합니다.
#create data frame df <- data. frame (player=c('A', 'B', 'C', 'D'), year1=c(12, 15, 19, 19), year2=c(22, 29, 18, 12)) #view data frame df player year1 year2 1 to 12 22 2 B 15 29 3 C 19 18 4 D 19 12
Gather() 함수를 사용하여 다음과 같이 “연도”와 “포인트”라는 두 개의 새로운 열을 만들 수 있습니다.
library (tidyr) #gather data from columns 2 and 3 gather(df, key=" year ", value=" points ", 2:3) player year points 1 A year1 12 2 B year1 15 3 C year1 19 4 D year1 19 5 A year2 22 6 B year2 29 7 C year2 18 8 D year2 12
예시 2: 2개 이상의 열에서 값 수집
R에 다음과 같은 데이터 프레임이 있다고 가정합니다.
#create data frame df2 <- data. frame (player=c('A', 'B', 'C', 'D'), year1=c(12, 15, 19, 19), year2=c(22, 29, 18, 12), year3=c(17, 17, 22, 25)) #view data frame df2 player year1 year2 year3 1 A 12 22 17 2 B 15 29 17 3 C 19 18 22 4 D 19 12 25
Gather() 함수를 사용하여 다음과 같이 열 2, 3, 4의 값을 “연도”와 “포인트”라는 두 개의 새로운 열로 “수집”할 수 있습니다.
library (tidyr) #gather data from columns 2, 3, and 4 gather(df, key=" year ", value=" points ", 2:4) player year points 1 A year1 12 2 B year1 15 3 C year1 19 4 D year1 19 5 A year2 22 6 B year2 29 7 C year2 18 8 D year2 12 9 A year3 17 10 B year3 17 11 C year3 22 12 D year3 25
추가 리소스
Tidyr 패키지의 목표는 다음과 같은 특징을 가진 “정돈된” 데이터를 생성하는 것입니다.
- 각 열은 변수입니다.
- 각 줄은 관찰입니다.
- 각 셀은 고유한 값입니다.
Tidyr 패키지는 네 가지 주요 기능을 사용하여 정렬된 데이터를 생성합니다.
1. Spread() 함수.
2. 수집() 함수.
3. Separate() 함수.
4. 단위() 함수.
이 네 가지 기능을 마스터하면 모든 데이터 프레임에서 “정리된” 데이터를 생성할 수 있습니다.