Как удалить несколько столбцов в R (с примерами)


Часто вам может понадобиться удалить сразу несколько столбцов из фрейма данных в R.

Проще всего это сделать с помощью следующего синтаксиса:

df[ , c('column_name1', 'column_name2')] <- list(NULL)

Например, следующий синтаксис показывает, как удалить столбцы 2 и 3 из заданного фрейма данных:

#create data frame
df <- data.frame(var1=c(1, 3, 2, 9, 5),
 var2=c(7, 7, 8, 3, 2),
 var3=c(3, 3, 6, 6, 8),
 var4=c(1, 1, 2, 8, 7))

#delete columns 2 and 3 from data frame
df[ , c('var2', 'var3')] <- list(NULL)

#view data frame
df

 var1 var4
1 1 1
2 3 1
3 2 2
4 9 8
5 5 7

Мы также можем удалить столбцы в соответствии с их индексом:

#create data frame
df <- data.frame(var1=c(1, 3, 2, 9, 5),
 var2=c(7, 7, 8, 3, 2),
 var3=c(3, 3, 6, 6, 8),
 var4=c(1, 1, 2, 8, 7))

#delete columns in position 2 and 3
df[ , c(2, 3)] <- list(NULL)

#view data frame
df

 var1 var4
1 1 1
2 3 1
3 2 2
4 9 8
5 5 7

И мы можем использовать следующий синтаксис для удаления всех столбцов в диапазоне:

#create data frame
df <- data.frame(var1=c(1, 3, 2, 9, 5),
 var2=c(7, 7, 8, 3, 2),
 var3=c(3, 3, 6, 6, 8),
 var4=c(1, 1, 2, 8, 7))

#delete columns in range 1 through 3
df[ , 1:3] <- list(NULL)

#view data frame
df

 var4
1 1
2 1
3 2
4 8
5 7

Как правило, рекомендуется удалять столбцы по их имени, а не по их положению просто потому, что если вы добавите или измените порядок столбцов, их положение может измениться.

Используя имена столбцов, вы гарантируете, что удаляете правильные столбцы независимо от их положения.

Дополнительные ресурсы

Как перебрать имена столбцов в R
Как объединить два столбца в один в R
Как удалить выбросы из нескольких столбцов в R

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.