R에서 spread 함수를 사용하는 방법(예제 포함)


Tidyr 패키지의 Spread() 함수를 사용하여 여러 열에 키-값 쌍을 “확산”할 수 있습니다.

이 함수는 다음 기본 구문을 사용합니다.

스프레드(데이터, 키 값)

금:

  • data : 데이터 프레임의 이름
  • key : 값이 변수명이 될 컬럼
  • value : 키에서 생성된 새 변수 아래에 값이 채워질 열입니다.

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

예시 1: 두 열에 값 분산

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

 #create data frame
df <- data. frame (player= rep (c(' A ', ' B '), each= 4 ),
                 year= rep (c(1, 1, 2, 2), times= 2 ),
                 stat= rep (c(' points ', ' assists '), times= 4 ),
                 amount=c(14, 6, 18, 7, 22, 9, 38, 4))

#view data frame
df

  player year stat amount
1 A 1 points 14
2 A 1 assists 6
3 A 2 points 18
4 A 2 assists 7
5 B 1 points 22
6 B 1 assists 9
7 B 2 points 38
8 B 2 assists 4

Spread() 함수를 사용하여 통계 열 값을 자체 열로 변환할 수 있습니다.

 library (tidyr)

#spread stat column across multiple columns
spread(df, key=stat, value=amount)

  player year assists points
1 to 1 6 14
2 to 2 7 18
3 B 1 9 22
4 B 2 4 38

예시 2: 두 개 이상의 열에 값 분산

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

 #create data frame
df2 <- data. frame (player= rep (c(' A '), times= 8 ),
                 year= rep (c(1, 2), each= 4 ),
                 stat= rep (c(' points ', ' assists ', ' steals ', ' blocks '), times= 2 ),
                 amount=c(14, 6, 2, 1, 29, 9, 3, 4))

#view data frame
df2

  player year stat amount
1 A 1 points 14
2 A 1 assists 6
3 A 1 steals 2
4 A 1 blocks 1
5 A 2 points 29
6 A 2 assists 9
7 A 2 steals 3
8 A 2 blocks 4

Spread() 함수를 사용하여 stat 열의 고유 값 4개를 새 열 4개로 변환할 수 있습니다.

 library (tidyr)

#spread stat column across multiple columns
spread(df2, key=stat, value=amount)

  player year assists blocks points steals
1 A 1 6 1 14 2
2 A 2 9 4 29 3

추가 리소스

Tidyr 패키지의 목표는 다음과 같은 특징을 가진 “정돈된” 데이터를 생성하는 것입니다.

  • 각 열은 변수입니다.
  • 각 줄은 관찰입니다.
  • 각 셀은 고유한 값입니다.

Tidyr 패키지는 네 가지 주요 기능을 사용하여 정렬된 데이터를 생성합니다.

1. Spread() 함수.

2. 수집() 함수.

3. Separate() 함수.

4. 단위() 함수.

이 네 가지 기능을 마스터하면 모든 데이터 프레임에서 “정리된” 데이터를 생성할 수 있습니다.

의견을 추가하다

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