在R中拆分后重新排序数据

在R中拆分后重新排序数据,r,split,R,Split,我已使用拆分功能将数据分组,结果如下: $H1050 row.names Avg Tree 1071 1904 2.8530 H1050 1072 1905 2.4030 H1050 1073 1906 1.6030 H1050 1074 1907 1.7660 H1050 1075 1908 2.5150 H1050 $H1040 row.names Avg Tree 1737 1664 4.3

我已使用拆分功能将数据分组,结果如下:

$H1050
     row.names    Avg  Tree
1071      1904 2.8530 H1050
1072      1905 2.4030 H1050
1073      1906 1.6030 H1050
1074      1907 1.7660 H1050
1075      1908 2.5150 H1050

$H1040
     row.names    Avg  Tree
1737       1664 4.3200 H1040
1738       1665 4.0900 H1040
1739       1666 5.3100 H1040
1740       1667 4.8000 H1040
1741       1668 3.7000 H1040
1742       1669 4.0400 H1040
1743       1670 4.2800 H1040
总共大约有36个小组。然后我循环使用这些数据来绘制每个单独的数据组。我希望能够按照row.names列中的元素数对分割数据重新排序。例如,计算row.names列中的元素数,然后数字最高的组应位于顶部,并相应地递减

这里最好的方法是什么

非常感谢您的时间和努力

类似这样的内容(假设列表名为l):

如果row.names是分割数据帧中的行的名称,而不是数据帧中的变量(我不清楚它来自OP),则可以将第一行替换为:

num.row.names = lapply(l, function(x) length(unique(row.names(x))))

假设
splat
是您的分割数据集:

  splat[order(sapply(splat, function(x) length(x[["row.names"]])))]
  splat[order(sapply(splat, function(x) length(x[["row.names"]])))]