我有以下列表: 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)) 我希望能按照“x”标准对列表中的元素进行排序。我不知道该怎么做。非常感谢您的帮助。
myList[order(sapply(myList, "[[", "x"))] 这将解决问题。 [[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
[[
会更快,但你也可以使用稍微不那么奇怪的mapply(get,'x',myList)
。 - Matthew Plourdesapply(myList, get, x = 'x')
来完成。 - Sven Hohenstein