Per rimuovere una o più colonne per nome, quando i nomi delle colonne sono noti (anziché essere determinati in fase di esecuzione), mi piace la subset()
sintassi. Ad esempio per il frame di dati
df <- data.frame(a=1:3, d=2:4, c=3:5, b=4:6)
per rimuovere solo la a
colonna che potresti fare
Data <- subset( Data, select = -a )
e per rimuovere le colonne b
e d
che potresti fare
Data <- subset( Data, select = -c(d, b ) )
Puoi rimuovere tutte le colonne tra d
e b
con:
Data <- subset( Data, select = -c( d : b )
Come ho detto sopra, questa sintassi funziona solo quando sono noti i nomi delle colonne. Non funzionerà quando si dice che i nomi delle colonne sono determinati a livello di programmazione (ovvero assegnati a una variabile). Riprodurrò questo avviso dalla ?subset
documentazione:
Avvertimento:
Questa è una funzione di praticità destinata all'uso interattivo. Per la programmazione è meglio usare le funzioni di subsetting standard come '[', e in particolare la valutazione non standard dell'argomento 'subset' può avere conseguenze impreviste.