我有一个简单的问题。我有一个对象列表。每个对象都包含几个列表。在这变得太复杂之前,让我举例说明:
x = 一个列表
x[[1]] = 某个对象
x[[2]] = 另一个对象
...
x[[n]] = 另一个对象
正如我所说,每个对象都包含更多列表。但我对一个特定的列表感兴趣,我们称它为“a”。
x[[1]][[a]] = ('A': 1, 'B': 2, 'C': 3, ..., Z: 26)
对不起,类似于 python 的语法!我真的只是在学习 R。无论如何,我想做的是结合这些对象中保存的列表,然后取它们的中位数。为了更清楚地说明这一点,我想对所有“A”元素进行分组,然后取它们的中位数:
x[[1]][[a]][['A']],x[[2]][[a]][['A']],x[[3]][[a]][ ['A']], ..., x[[n]][[a]][['A']]
同样,我想将所有 'B'、'C'、...、'Z' 元素分组并取它们的中位数...
x[[1]][[a]][['Z']],x[[2]][[a]][['Z']],x[[3]][[a]][ ['Z']], ..., x[[n]][[a]][['Z']]
所以问题是最好的方法是什么?我花了几个小时试图弄清楚这一点!如果有人可以帮助我,那就太好了。
如果你想知道我实际上在做什么,基本上我有一个随机森林对象的列表 (x)。所以 x[[1]] 是第一个随机森林,x[[100]] 是第 100 个随机森林。每个随机森林都有一个预测值列表,这些预测值存储在例如 x[[1]][['predicted']] 中。每个预测列表都有一个与其预测值相关联的标签。我实际上想要做的是计算所有 100 个随机森林中每个标签的中值预测值。我想有效地做到这一点。在 Python 中,这很容易,但在 R 中我不太确定。无论如何,谢谢你的帮助!!!对此,我真的非常感激。