R,list:如何使用名称获取嵌套值?

时间:2016-03-17 22:59:02

标签: r list dataframe

好吧,我还不熟悉列表。我想使用同一级别的名称从列表中分隔值。

示例:

a <- data.frame("value" = 10, "title" = "A")
b <- data.frame("value" = 20, "title" = "B")
c <- data.frame("value" = 30, "title" = "C")
d <- data.frame("value" = 40, "title" = "D")
e <- list("a" = a, "b"= b)
f <- list("c" = c, "d" = d)

x <- list("e" = e, "f" = f)
rm(a, b, c, d, e, f)

这就是列表x的样子:

$e
$e$a
  value title
    10     A

$e$b
  value title
    20     B


$f
$f$c
  value title
    30     C

$f$d
  value title
    40     D

例如,我可以使用x$f$c$value获取值。但如果我在同一列表级别只知道标题D,有没有办法获得相同的值30?用D来获得30。

1 个答案:

答案 0 :(得分:0)

我们可以试试

rbindlist(x$f)[title!="D",]
   value title
1:    30     C

#If just want value
rbindlist(x$f)[title!="D",]$value
#[1] 30