2014-01-19 3 views
5

Мне нужна помощь при сортировке списка списков. Предположим, у меня есть список детей, учитывая, как следующее:Сортировка списка списков в R: сортировка значения одного списка в зависимости от значения других списков

a <- list(name = "Ann", age = 9) 
b <- list(name = "Bobby", age = 17) 
c <- list(name = "Alex", age = 6) 

my.list <- list(a, b, c) 

Я хотел бы сортировать их имена по их возрасту, поэтому получить следующее:

> "Alex" "Ann" "Bobby" 

ответ

5
a <- list(name = "Ann", age = 9) 
b <- list(name = "Bobby", age = 17) 
c <- list(name = "Alex", age = 6) 

L <- list(a,b,c) 
ages <- sapply(L,"[[","age") 
names <- sapply(L,"[[","name") 
names[order(ages)] 
+0

Однозначно! Спасибо, Бен. –

Смежные вопросы