Como excluir colunas por nome em r (com exemplos)
Existem três maneiras comuns de remover colunas de um quadro de dados em R por nome:
Método 1: Use Base R
#drop col2 and col4 from data frame
df_new <- subset(df, select = -c(col2, col4))
Método 2: use dplyr
library (dplyr) #drop col2 and col4 from data frame df_new <- df %>% select(-c(col2, col4))
Método 3: use data.table
library (data.table) #convert data frame to data table dt <- setDT(df) #drop col2 and col4 from data frame dt[, c(' col2 ', ' col4 '):=NULL]
Os exemplos a seguir mostram como usar cada método na prática com o seguinte quadro de dados em R:
#create data frame
df <- data. frame (team=c('A', 'A', 'B', 'B', 'C', 'C', 'C', 'D'),
points=c(12, 15, 22, 29, 35, 24, 11, 24),
rebounds=c(10, 4, 4, 15, 14, 9, 12, 8),
assists=c(7, 7, 5, 8, 19, 14, 11, 10))
#view data frame
df
team points rebound assists
1 A 12 10 7
2 to 15 4 7
3 B 22 4 5
4 B 29 15 8
5 C 35 14 19
6 C 24 9 14
7 C 11 12 11
8 D 24 8 10
Exemplo 1: Remover colunas por nome usando Base R
O código a seguir mostra como remover as colunas de ponto e auxiliares do quadro de dados usando a função subset() na base R:
#create new data frame by dropping points and assists columns
df_new <- subset(df, select = -c(points, assists))
#view new data frame
df_new
team rebounds
1 to 10
2 to 4
3 B 4
4 B 15
5 C 14
6 C 9
7 C 12
8 D 8
Observe que as colunas de pontos e assistências foram removidas do novo quadro de dados.
Exemplo 2: Remover colunas por nome usando dplyr
O código a seguir mostra como remover as colunas pontuais e auxiliares do quadro de dados usando a função select() do pacote dplyr:
library (dplyr)
#create new data frame by dropping points and assists columns
df_new <- df %>% select(-c(points, assists))
#view new data frame
df_new
team rebounds
1 to 10
2 to 4
3 B 4
4 B 15
5 C 14
6 C 9
7 C 12
8 D 8
Observe que as colunas de pontos e assistências foram removidas do novo quadro de dados.
Exemplo 3: Exclua colunas por nome usando data.table
O código a seguir mostra como remover as colunas de ponto e auxiliares do quadro de dados definindo ambas as colunas como NULL usando o pacote data.table:
library (data.table)
#convert data frame to data table
dt <- setDT(df)
#drop points and assists columns
dt[, c(' points ', ' assists '):=NULL]
#view updated data table
dt
team rebounds
1: At 10
2: A 4
3:B4
4:B15
5:C14
6: C 9
7:C12
8: D 8
Observe que as colunas de pontos e assistências foram removidas da nova tabela de dados.
Nota : Todos os três métodos produzem o mesmo resultado, mas os métodos dplyr e data.table tendem a ser mais rápidos ao trabalhar com conjuntos de dados extremamente grandes.
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em R:
Como remover colunas com valores NA em R
Como reorganizar colunas em R
Como renomear colunas em R