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에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.