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

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *