R에서 데이터 프레임을 전치하는 방법(예제 포함)


R에서 데이터 프레임을 전치하는 데 사용할 수 있는 두 가지 일반적인 방법이 있습니다.

방법 1: 기본 R 사용

 #transpose data frame
t(df)

방법 2: data.table 사용

 library (data.table)

#transpose data frame
df_t <- transpose(df)

#redefine row and column names
rownames(df_t) <- colnames(df)
colnames(df_t) <- rownames(df)

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

방법 1: Base R을 사용하여 데이터 프레임 전치

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

 #create data frame
df <- data. frame (A = c(1, 2, 3, 4, 5),
                 B = c(6, 7, 8, 9, 10),
                 C = c(11, 12, 13, 14, 15))

#define row names
row. names (df) <- c('One', 'Two', 'Three', 'Four', 'Five')

#view data frame
df

      ABC
One 1 6 11
Two 2 7 12
Three 3 8 13
Oven 4 9 14
Five 5 10 15

R base t() 함수를 사용하여 데이터 프레임을 빠르게 전치할 수 있습니다.

 #transpose data frame
t(df)

  One Two Three Four Five
A 1 2 3 4 5
B 6 7 8 9 10
C 11 12 13 14 15

이제 행과 열이 반전되었습니다.

방법 2: data.table을 사용하여 데이터 프레임 전치

다음과 같은 데이터 프레임이 있다고 다시 가정해 보겠습니다.

 #create data frame
df <- data. frame (A = c(1, 2, 3, 4, 5),
                 B = c(6, 7, 8, 9, 10),
                 C = c(11, 12, 13, 14, 15))

#define row names
row. names (df) <- c('One', 'Two', 'Three', 'Four', 'Five')

#view data frame
df

      ABC
One 1 6 11
Two 2 7 12
Three 3 8 13
Oven 4 9 14
Five 5 10 15

data.table 패키지의 transpose() 함수를 사용하여 데이터 프레임을 빠르게 전치할 수 있습니다.

 library (data.table)

#transpose data frame
df_t <- transpose(df)

#redefine row and column names
rownames(df_t) <- colnames(df)
colnames(df_t) <- rownames(df)

#display transposed data frame
df_t

  One Two Three Four Five
A 1 2 3 4 5
B 6 7 8 9 10
C 11 12 13 14 15

결과는 이전 예제의 전치된 데이터 프레임입니다.

참고 : 매우 큰 데이터 프레임으로 작업하는 경우 data.table 메서드는 기본 R보다 훨씬 빠릅니다.

추가 리소스

다음 튜토리얼에서는 R의 데이터 프레임에 대한 다른 일반적인 작업을 수행하는 방법을 설명합니다.

R의 각 데이터 프레임 행에 함수를 적용하는 방법
R의 데이터 프레임에 빈 열을 추가하는 방법
R에서 데이터 프레임을 부분 집합하는 방법

의견을 추가하다

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