если вы хотите избежать числовых индексов, вы можете использовать
a <- setdiff(names(a),c("name1", ..., "namen"))
для удаления имен namea...namen
из. это работает для списков
> l <- list(a=1,b=2)
> l[setdiff(names(l),"a")]
$b
[1] 2
а также для векторов
> v <- c(a=1,b=2)
> v[setdiff(names(v),"a")]
b
2