Если вы посмотрите на help("names")
, вы увидите, что в списке указаны два использования:
names(x)
names(x) <- value
Итак, определены и функции получения, и установки.И предполагаемое использование - ваш второй подход.
Упрощенная причина, по которой ваш первый подход не работает, состоит в том, что X[2]
возвращает
#b
#2
Т.е. именованный вектор длины 1. Следовательно,выполнение
names(X[2]) <- "z"
будет переименовано, но результат никогда не будет сохранен.