Jak usunąć kolumny z ramki danych w r (z przykładami)


Najłatwiejszym sposobem usunięcia kolumn z ramki danych w R jest użycie funkcji subset() , która wykorzystuje następującą podstawową składnię:

 #remove columns var1 and var3
new_df <- subset(df, select = - c(var1, var3))

Poniższe przykłady pokazują, jak w praktyce wykorzystać tę funkcję z następującą ramką danych:

 #create data frame
df <- data. frame (var1=c(1, 3, 3, 4, 5),
                 var2=c(7, 7, 8, 3, 2),
                 var3=c(3, 3, 6, 10, 12),
                 var4=c(14, 16, 22, 19, 18))

#view data frame
df

  var1 var2 var3 var4
1 1 7 3 14
2 3 7 3 16
3 3 8 6 22
4 4 3 10 19
5 5 2 12 18

Przykład 1: Usuń kolumny według nazwy

Poniższy kod pokazuje, jak usunąć kolumny z ramki danych według nazwy:

 #remove columns var1 and var3
new_df <- subset(df, select = - c(var1, var3))

#view updated data frame
new_df

  var2 var4
1 7 14
2 7 16
3 8 22
4 3 19
5 2 18

Przykład 2: Upuść kolumny według indeksu

Poniższy kod pokazuje, jak usunąć kolumny z ramki danych według indeksu:

 #remove first and fourth columns
new_df <- subset(df, select = - c(1, 4))

#view updated data frame
new_df

  var2 var3
1 7 3
2 7 3
3 8 6
4 3 10
5 2 12

Przykład 3: Usuń kolumny z listy

Poniższy kod pokazuje, jak usunąć kolumny z ramki danych należące do określonej listy:

 #define list of columns to remove
remove_cols <- c(' var1 ', ' var4 ')

#remove columns in list
new_df = subset(df, select = ! ( names (df) %in% remove_cols))

#view updated data frame
new_df

  var2 var3
1 7 3
2 7 3
3 8 6
4 3 10
5 2 12

Przykład 4: Usuń kolumny w zakresie

Poniższy kod pokazuje, jak usunąć kolumny z ramki danych w określonym zakresie:

 #remove columns in range of 1 to 3
new_df = subset(df, select = - c(1:3))

#view updated data frame
new_df

  var4
1 14
2 16
3 22
4 19
5 18

Dodatkowe zasoby

Jak dodać kolumnę do ramki danych w R
Jak zmienić nazwę kolumn ramki danych w R
Jak posortować ramkę danych według kolumny w R

Dodaj komentarz

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