Attribuer des noms aux entrées vecteur sans affecter le vecteur d'un nom de variable?
Dans R, est-il possible d'attribuer des noms aux éléments d'un vecteur sans première affectation de ce vecteur à un nom de variable?
Le mode normal est à l'évidence:
z <- 1:3
names(z) <- c("a", "b", "c") #normal way
names(1:3) <- c("a", "b", "c") #throws an error
La deuxième façon jette "Erreur dans les noms(1:3) <- c("a", "b", "c") :
cible de cession s'étend aux non-objet"
Selon la doc, l'expression est évaluée comme
z <- "names<-"(z,
"[<-"(names(z), 3, "c2"))’.
Donc pas de choc, il ne fonctionne pas, je me demandais simplement si il y a un travail autour de.
Idéalement, il serait bien d'avoir quelque chose comme:
names(z <- 1:3) <- c("a", "b", "c")
> z
a b c
1 2 3
Semble juste comme un gaspillage de l'espace pour le mettre sur deux lignes différentes.
Vous devez vous connecter pour publier un commentaire.
Comment sur l'utilisation de
setNames()
, qui semble encore plus propres et plus claire que votre idéal?Toujours pensé que c'était un peu plus propre, aussi n'avez pas besoin d'un package supplémentaire: