按列表元素的长度对列表进行排序

nou*_*use 3 r

抱歉,我有一个基本问题,但我有一个元素列表,它们是数值向量

str(list1)
    List of 34
     $ 1      : num [1:2037171] 98.3 98.2 98.1 97.4 97.9 98 97.7 98.1 98.4 98 ...
     $ 3      : num [1:692076] 98.8 98.1 97.6 96.6 96.4 96.9 96.1 95.8 96.7 96.5 ...
     $ 2      : num [1:82621] 97.7 97.7 97.4 97.7 98.4 98.1 97.4 98 97.6 98.3 ..
     .
     .
     .
Run Code Online (Sandbox Code Playgroud)

,似乎 list.sort(或 order) 不起作用,因为 list1 不是原子向量。我想按 list1 向量的长度对 list1 进行排序。这怎么可能?很抱歉“滥用”这个网站作为我的个人 R 教程。在谷歌上找不到答案。

小智 6

len <- sapply(list1, length)
list1[order(len)]
Run Code Online (Sandbox Code Playgroud)