R에서 melt() 함수를 사용하는 방법


R에서 reshape2 패키지의 Melt() 함수를 사용하여 데이터 프레임을 넓은 형식에서 긴 형식으로 변환할 수 있습니다.

와이드 형식에는 첫 번째 열에서 반복 되지 않는 값이 포함됩니다.

형식에는 첫 번째 열에서 반복되는 값이 포함됩니다.

예를 들어, 서로 다른 형식으로 표현된 동일한 데이터를 포함하는 다음 두 개의 데이터세트를 생각해 보세요.

넓거나 긴 데이터 형식

Melt() 함수는 다음 기본 구문을 사용하여 와이드 형식 데이터 프레임을 긴 형식으로 변환합니다.

 melt(df, id=' team ')

id 인수는 값이 반복되는 데이터 프레임의 첫 번째 열로 사용할 변수를 지정합니다.

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

예: R에서 Melt()를 사용하는 방법

현재 와이드 형식인 R에 다음과 같은 데이터 프레임이 있다고 가정합니다.

 #create data frame in wide format
df <- data. frame (team=c('A', 'B', 'C', 'D'),
                 dots=c(88, 91, 99, 94),
                 assists=c(12, 17, 24, 28),
                 rebounds=c(22, 28, 30, 31))

#view data frame
df

  team points assists rebounds
1 A 88 12 22
2 B 91 17 28
3 C 99 24 30
4 D 94 28 31

Melt() 함수를 사용하여 데이터 프레임을 긴 형식으로 빠르게 변환할 수 있습니다.

 library (reshape2)

#use melt() to convert data frame from wide to long format
long_df <- melt(df, id=' team ')

#view long data frame
long_df

   team variable value
1 A points 88
2 B points 91
3 C points 99
4 D points 94
5 A assists 12
6 B assists 17
7 C assists 24
8 D assists 28
9 A rebounds 22
10 B rebounds 28
11 C rebounds 30
12 D rebounds 31

이제 데이터 프레임은 긴 형식입니다.

포인트 , 어시스트리바운드 열은 모두 변수 라는 단일 열로 압축되었으며 해당 값은 모두 이라는 단일 열로 압축되었습니다.

names() 함수를 사용하여 결과 데이터 프레임의 열 이름을 자유롭게 바꾸세요.

 #rename columns in long_df
names(long_df) <- c(' team ', ' metric ', ' amount ')

#view updated data frame
long_df

   team metric amount
1 A points 88
2 B points 91
3 C points 99
4 D points 94
5 A assists 12
6 B assists 17
7 C assists 24
8 D assists 28
9 A rebounds 22
10 B rebounds 28
11 C rebounds 30
12 D rebounds 31

열 이름이 변경되었습니다.

추가 리소스

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

R에서 행을 필터링하는 방법
데이터프레임을 R로 바꾸는 방법
R에서 데이터 프레임 열의 이름을 바꾸는 방법

의견을 추가하다

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