Jak transponować ramkę danych w r (z przykładami)


Istnieją dwie popularne metody transpozycji ramki danych w języku R:

Metoda 1: Użyj podstawy R

 #transpose data frame
t(df)

Metoda 2: Użyj 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)

Poniższe przykłady pokazują, jak zastosować każdą z tych metod w praktyce.

Metoda 1: Transponuj ramkę danych przy użyciu podstawy R

Załóżmy, że mamy następującą ramkę danych:

 #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

Możemy użyć funkcji R base t() do szybkiej transpozycji ramki danych:

 #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

Wiersze i kolumny są teraz odwrócone.

Metoda 2: Transponuj ramkę danych za pomocą data.table

Załóżmy jeszcze raz, że mamy następującą ramkę danych:

 #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

Możemy użyć funkcji transpose() pakietu data.table, aby szybko transponować ramkę danych:

 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

Wynikiem jest transponowana ramka danych z poprzedniego przykładu.

Uwaga : Metoda data.table będzie znacznie szybsza niż podstawowa metoda R, jeśli pracujesz z bardzo dużą ramką danych.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe operacje na ramkach danych w R:

Jak zastosować funkcję do każdego wiersza ramki danych w R
Jak dodać pustą kolumnę do ramki danych w R
Jak podzielić ramkę danych na podzbiór w R

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *