提取列表元素

时间:2012-03-30 17:09:05

标签: r

我关注llplyreshape函数的输出。

df <-
structure(list(Loc1 = structure(list(tables = structure(list(
    `Grand mean` = 6.86966666666667, Entry = structure(c(5.67,
    7.375, 6.465, 5.95, 6.695, 5.875, 7.46, 6.17, 8.555, 5.415,
    7.91, 7.815, 6.415, 8.035, 7.24), .Dim = 15L, .Dimnames = structure(list(
        Entry = c("1", "2", "3", "4", "5", "6", "7", "8", "9",
        "10", "11", "12", "13", "14", "15")), .Names = "Entry"), class = "mtable")), .Names = c("Grand mean",
"Entry")), n = structure(2L, .Names = "Entry"), se = structure(list(
    Entry = structure(0.536212022742248, .Dim = c(1L, 1L), .Dimnames = list(
        "2", "2"))), .Names = "Entry", type = "means", class = "mtable")), .Names = c("tables",
"n", "se"), type = "means", class = c("tables_aov", "list.of"
)), Loc2 = structure(list(tables = structure(list(`Grand mean` = 7.42966666666667,
    Entry = structure(c(7.95, 6.595, 7.07, 9.35, 8.355, 6.955,
    7.435, 7.42, 7.83, 7.105, 8.64, 6.16, 7.85, 7.17, 5.56), .Dim = 15L, .Dimnames = structure(list(
        Entry = c("1", "2", "3", "4", "5", "6", "7", "8", "9",
        "10", "11", "12", "13", "14", "15")), .Names = "Entry"), class = "mtable")), .Names = c("Grand mean",
"Entry")), n = structure(2L, .Names = "Entry"), se = structure(list(
    Entry = structure(0.565181386813118, .Dim = c(1L, 1L), .Dimnames = list(
        "2", "2"))), .Names = "Entry", type = "means", class = "mtable")), .Names = c("tables",
"n", "se"), type = "means", class = c("tables_aov", "list.of"
)), Loc3 = structure(list(tables = structure(list(`Grand mean` = 3.6391,
    Entry = structure(c(3.788, 4.7345, 3.5905, 3.6285, 3.954,
    3.533, 0.824500000000001, 4, 3.3295, 3.413, 3.1815, 3.744,
    4.821, 4.5695, 3.475), .Dim = 15L, .Dimnames = structure(list(
        Entry = c("1", "2", "3", "4", "5", "6", "7", "8", "9",
        "10", "11", "12", "13", "14", "15")), .Names = "Entry"), class = "mtable")), .Names = c("Grand mean",
"Entry")), n = structure(2L, .Names = "Entry"), se = structure(list(
    Entry = structure(0.519259954165541, .Dim = c(1L, 1L), .Dimnames = list(
        "2", "2"))), .Names = "Entry", type = "means", class = "mtable")), .Names = c("tables",
"n", "se"), type = "means", class = c("tables_aov", "list.of"
)), Loc4 = structure(list(tables = structure(list(`Grand mean` = 3.41326666666667,
    Entry = structure(c(2.967, 4.089, 3.244, 2.581, 3.133, 2.874,
    3.321, 3.7065, 3.475, 3.9375, 3.5265, 2.992, 4.3175, 3.26,
    3.775), .Dim = 15L, .Dimnames = structure(list(Entry = c("1",
    "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12",
    "13", "14", "15")), .Names = "Entry"), class = "mtable")), .Names = c("Grand mean",
"Entry")), n = structure(2L, .Names = "Entry"), se = structure(list(
    Entry = structure(0.527952523118004, .Dim = c(1L, 1L), .Dimnames = list(
        "2", "2"))), .Names = "Entry", type = "means", class = "mtable")), .Names = c("tables",
"n", "se"), type = "means", class = c("tables_aov", "list.of"
)), Loc5 = structure(list(tables = structure(list(`Grand mean` = 3.6835,
    Entry = structure(c(3.504, 3.149, 3.2595, 4.0985, 3.42, 4.007,
    4.7835, 3.6615, 3.8575, 3.0235, 4.5785, 2.6305, 3.4685, 3.395,
    4.416), .Dim = 15L, .Dimnames = structure(list(Entry = c("1",
    "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12",
    "13", "14", "15")), .Names = "Entry"), class = "mtable")), .Names = c("Grand mean",
"Entry")), n = structure(2L, .Names = "Entry"), se = structure(list(
    Entry = structure(0.371149430822681, .Dim = c(1L, 1L), .Dimnames = list(
        "2", "2"))), .Names = "Entry", type = "means", class = "mtable")), .Names = c("tables",
"n", "se"), type = "means", class = c("tables_aov", "list.of"
)), Loc6 = structure(list(tables = structure(list(`Grand mean` = 3.22453333333333,
    Entry = structure(c(3.4805, 2.6675, 2.82, 3.5555, 2.436,
    3.323, 2.8595, 3.259, 3.713, 2.79, 3.213, 4.0015, 3.317,
    3.654, 3.2785), .Dim = 15L, .Dimnames = structure(list(Entry = c("1",
    "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12",
    "13", "14", "15")), .Names = "Entry"), class = "mtable")), .Names = c("Grand mean",
"Entry")), n = structure(2L, .Names = "Entry"), se = structure(list(
    Entry = structure(0.437812821496432, .Dim = c(1L, 1L), .Dimnames = list(
        "2", "2"))), .Names = "Entry", type = "means", class = "mtable")), .Names = c("tables",
"n", "se"), type = "means", class = c("tables_aov", "list.of"
))), .Names = c("Loc1", "Loc2", "Loc3", "Loc4", "Loc5", "Loc6"
))

我想从列表的每个元素中获取。我可以为这样的个人元素做到这一点

df$Loc1$se
df$Loc2$se
df$Loc3$se
df$Loc4$se
df$Loc5$se
df$Loc6$se

但我想通过一个电话来获得这些。但我无法弄清楚这一点。我非常感谢你的帮助。感谢

2 个答案:

答案 0 :(得分:2)

我认为你在寻找:

unlist(sapply(df,'[[',"se"))

另据说明,据我所知llplyplyr而非reshape的函数。

答案 1 :(得分:1)

lapply(df, "[", "se") ...........