Рассмотрим следующее:
df <- data.frame(a = 1, b = 2, c = 3)
names(df[1]) <- "d" ## First method
## a b c
##1 1 2 3
names(df)[1] <- "d" ## Second method
## d b c
##1 1 2 3
Оба метода не возвратили ошибку, но первая не изменила имя столбца, а вторая сделала.
Я думал, что это связано с тем, что я работаю только с подмножеством df
, но почему, например, следующее работает отлично?
df[1] <- 2
## a b c
##1 2 2 3