Para remover uma ou mais colunas pelo nome, quando os nomes das colunas são conhecidos (em vez de serem determinados no tempo de execução), eu gosto da subset()
sintaxe. Por exemplo, para o quadro de dados
df <- data.frame(a=1:3, d=2:4, c=3:5, b=4:6)
para remover apenas a a
coluna que você poderia fazer
Data <- subset( Data, select = -a )
e para remover as colunas b
e d
você poderia fazer
Data <- subset( Data, select = -c(d, b ) )
Você pode remover todas as colunas entre d
e b
com:
Data <- subset( Data, select = -c( d : b )
Como eu disse acima, essa sintaxe funciona apenas quando os nomes das colunas são conhecidos. Não funcionará quando, digamos, os nomes das colunas forem determinados programaticamente (isto é, atribuídos a uma variável). Vou reproduzir este aviso da ?subset
documentação:
Aviso:
Esta é uma função de conveniência destinada ao uso interativamente. Para a programação, é melhor usar as funções de subconjunto padrão como '[' e, em particular, a avaliação não padrão do argumento 'subconjunto' pode ter consequências imprevistas.