5 votes

Trier une liste de listes par clé en R

J'ai la liste suivante :

myList <- list(list(a = 1,b = 1:5,x = 2),
               list(a = 7,b = 9.1,x = 3),
               list(a=-1, b = 0.2, x = 1))

Et je voudrais trier mes éléments dans cette liste selon le critère "x". Je suis perdu sur la manière de le faire. Toute aide serait grandement appréciée.

8voto

Sven Hohenstein Points 36055
myList[order(sapply(myList, "[[", "x"))]

fera l'affaire

[[1]]
[[1]]$a
[1] -1

[[1]]$b
[1] 0.2

[[1]]$x
[1] 1

[[2]]
[[2]]$a
[1] 1

[[2]]$b
[1] 1 2 3 4 5

[[2]]$x
[1] 2

[[3]]
[[3]]$a
[1] 7

[[3]]$b
[1] 9.1

[[3]]$x
[1] 3

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X