Чтобы удалить один или несколько столбцов по имени, когда имена столбцов известны (в отличие от определения во время выполнения), мне нравится subset()
синтаксис. Например, для фрейма данных
df <- data.frame(a=1:3, d=2:4, c=3:5, b=4:6)
удалить только a
столбец, который вы могли бы сделать
Data <- subset( Data, select = -a )
и удалить b
и d
столбцы , которые вы могли бы сделать
Data <- subset( Data, select = -c(d, b ) )
Вы можете удалить все столбцы между d
и b
с:
Data <- subset( Data, select = -c( d : b )
Как я уже говорил выше, этот синтаксис работает только тогда, когда известны имена столбцов. Это не будет работать, когда, скажем, имена столбцов определяются программно (то есть присваиваются переменной). Я воспроизведу это предупреждение из ?subset
документации:
Предупреждение:
Это удобная функция, предназначенная для интерактивного использования. Для программирования лучше использовать стандартные функции поднабора, такие как '[', и, в частности, нестандартная оценка аргумента 'подмножество' может иметь непредвиденные последствия.