В R, можно ли назначать имена компонентам вектора, не присваивая при этом этот вектор имени переменной? Обычный путь, очевидно, равен:
z <- 1:3
names(z) <- c("a", "b", "c") #normal way
names(1:3) <- c("a", "b", "c") #throws an error
Второй способ: "Ошибка в именах (1: 3) < - c (" a "," b "," c "): цель присвоения расширяется до неязыкового объекта"
В соответствии с документом выражение оценивается как
z <- "names<-"(z,
"[<-"(names(z), 3, "c2"))’.
Так что ничего страшного это не сработает, мне просто интересно, есть ли работа вокруг.
В идеале было бы неплохо иметь что-то вроде:
names(z <- 1:3) <- c("a", "b", "c")
> z
a b c
1 2 3
Просто кажется пустой тратой пространства, чтобы поместить это на две разные линии.