Aby usunąć jedną lub więcej kolumn według nazwy, gdy nazwy kolumn są znane (w przeciwieństwie do określania w czasie wykonywania), podoba mi się subset()
składnia. Np. Dla ramki danych
df <- data.frame(a=1:3, d=2:4, c=3:5, b=4:6)
aby usunąć tylko a
kolumnę, którą możesz zrobić
Data <- subset( Data, select = -a )
i aby usunąć kolumny b
i, d
które możesz zrobić
Data <- subset( Data, select = -c(d, b ) )
Możesz usunąć wszystkie kolumny pomiędzy d
i za b
pomocą:
Data <- subset( Data, select = -c( d : b )
Jak powiedziałem powyżej, ta składnia działa tylko wtedy, gdy znane są nazwy kolumn. Nie zadziała, gdy powiedzmy, że nazwy kolumn są ustalane programowo (tj. Przypisywane do zmiennej). Powielę to Ostrzeżenie z ?subset
dokumentacji:
Ostrzeżenie:
Jest to wygodna funkcja przeznaczona do użytku interaktywnego. Do programowania lepiej jest używać standardowych funkcji podzestawu, takich jak „[”, aw szczególności niestandardowa ocena argumentu „podzbiór” może mieć nieoczekiwane konsekwencje.