vectores vacio operaciones matrices entre eliminar data crear concatenar combinar columnas r variables variable-assignment

vacio - matrices en r



¿Asignar nombres a las entradas de vectores sin asignar un nombre de variable al vector? (2)

¿Qué hay de usar setNames() , que parece incluso más claro / claro que su ideal sugerido?

z <- setNames(1:3, c("a", "b", "c")) # z # a b c # 1 2 3

En R, ¿es posible asignar nombres a componentes de un vector sin asignar primero ese vector a un nombre de variable? La forma normal es obviamente:

z <- 1:3 names(z) <- c("a", "b", "c") #normal way names(1:3) <- c("a", "b", "c") #throws an error

La segunda forma lanza "Error en los nombres (1: 3) <- c (" a "," b "," c "): el destino de la asignación se expande al objeto que no está en el idioma"

Según el doc, la expresión se evalúa como

z <- "names<-"(z, "[<-"(names(z), 3, "c2"))’.

Así que no me sorprende que no funcione, solo me pregunto si hay una solución.

Idealmente, sería bueno tener algo como:

names(z <- 1:3) <- c("a", "b", "c") > z a b c 1 2 3

Simplemente parece un desperdicio de espacio para poner eso en dos líneas diferentes.


Siempre pensé que esto era un poco más limpio, también no necesita un paquete adicional:

z <- c(a=1, b=2, c=3) # z # a b c # 1 2 3