Я изучаю R и пытаюсь понять свойства индексации.Кажется, я не понимаю, почему следующий код для изменения имени столбца не работает:
state.all <- as.data.frame(state.x77)
head(state.all)
state.all$States <- rownames(state.all)
rownames(state.all) <- NULL
# why the following row does not work?
names(state.all["States"]) <- "Test"
colnames(state.all)
Пока это работает:
state.all <- as.data.frame(state.x77)
head(state.all)
state.all$States <- rownames(state.all)
rownames(state.all) <- NULL
# This work
names(state.all)[which(colnames(state.all)=="States")] <- "Test"
colnames(state.all)
Разве функция не должна перезаписывать функциюимя колонки тоже в первом примере?Это как-то связано с локальной и глобальной средой?
Заранее спасибо!