Converteer benoemde lijst naar vector met alleen waarden

Ik heb een lijst met benoemde waarden:

myList <- list('A' = 1, 'B' = 2, 'C' = 3)

Ik wil een vector met de waarde 1:3

Ik weet niet hoe ik de waarden kan extraheren zonder een functie te definiëren. Is er een eenvoudigere manier die ik niet ken?

library(plyr)
myvector <- laply(myList, function(x) x)

Is er iets dat lijkt op myList$Valuesom de namen te verwijderen en terug te sturen als vector?


Antwoord 1, autoriteit 100%

Gebruik unlistmet het argument use.names = FALSE.

unlist(myList, use.names=FALSE)

Antwoord 2, autoriteit 16%

purrr::flatten_*()is ook een goede optie. de flatten_*functies voegen dunne sanity checks toe en zorgen voor typeveiligheid.

myList <- list('A'=1, 'B'=2, 'C'=3)
purrr::flatten_dbl(myList)
## [1] 1 2 3

Antwoord 3, autoriteit 4%

Dit kan worden gedaan door unlistte gebruiken vóór as.vector.
Het resultaat is hetzelfde als het gebruik van de parameter use.names=FALSE.

as.vector(unlist(myList))

Other episodes