У меня есть следующий код, и я хотел бы выбрать столбцы в новый data.frame
.
library(dplyr)
df = data.frame(
Manhattan=c(1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0),
Brooklyn=c(0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0),
The_Bronx=c(1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0),
Staten_Island=c(0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0),
"2012"=c("P", "P", "P", "P", "P", "P", "P", "P", "P", "P", "Q", "Q", "Q", "Q", "Q", "Q", "Q", "Q", "Q"),
"2013"=c("P", "P", "P", "P", "P", "P", "P", "P", "Q", "Q", "P", "P", "P", "P", "Q", "Q", "Q", "Q", "Q"),
"2014"=c("P", "P", "P", "Q", "Q", "P", "P", "Q", "Q", "Q", "Q", "Q", "P", "Q", "P", "P", "P", "Q", "Q"),
"2015"=c("P", "P", "P", "P", "P", "Q", "Q", "Q", "P", "Q", "P", "P", "Q", "Q", "Q", "Q", "Q", "Q", "Q"), check.names=FALSE)
df2 <- subset(df, select = c("Manhattan", "Queens", "The_Bronx"))
Это выдает ошибку:
Error in [.data.frame`(x, r, vars, drop = drop) :
undefined columns selected
Поскольку столбец "Queens" отсутствует от df
. Как я могу переопределить ошибку, чтобы R продолжал создавать df2 только со столбцами «Manhattan» и «The_Bronx»?
Очень важно: мои реальные данные имеют сотни столбцов, поэтому их невозможно выполнить вручную удалите столбцы, такие как «Queens», из команды df2 <- subset(df, select = c("Manhattan", "Queens", "The_Bronx"))
(разве для этого есть хитрость?). Есть ли способ решить это? Спасибо.