2014-02-25 125 views
1

我有列表1:R添加到列表(嵌套表)

list1<-list("outliers"=list("values"=list(list(c("a","b","c"), 
              "dimensionKey"=2101120, 
              "metric"="1") 
            ) 
         ) 
     ) 

> list1 
$outliers 
$outliers$values 
$outliers$values[[1]] 
$outliers$values[[1]][[1]] 
[1] "a" "b" "c" 

$outliers$values[[1]]$dimensionKey 
[1] 2101120 

$outliers$values[[1]]$metric 
[1] "1" 

我需要添加到這個列表中的值:

list2<-list(c("e", "f", "g", "m"), 
"dimensionKey"=2101120, 
"metric"="2") 

我想rezult看:

$outliers 
    $outliers$values 
    $outliers$values[[1]] 
    $outliers$values[[1]][[1]] 
    [1] "a" "b" "c" 

    $outliers$values[[1]]$dimensionKey 
    [1] 2101120 

    $outliers$values[[1]]$metric 
    [1] "1" 

    $outliers$values[[2]] 
    $outliers$values[[2]][[1]] 
    [1] "e" "f" "g" "m" 

    $outliers$values[[2]]$dimensionKey 
    [1] 2101120 

    $outliers$values[[2]]$metric 
    [1] "2" 

我該如何管理?

P.S .:我需要爲我的函數添加現有的列表值,因此我不能寫在一步。

謝謝!

回答

1

您可以使用此方法:

list1$outliers$values <- append(list1$outliers$values, list(list2)) 

結果(list1):

$outliers 
$outliers$values 
$outliers$values[[1]] 
$outliers$values[[1]][[1]] 
[1] "a" "b" "c" 

$outliers$values[[1]]$dimensionKey 
[1] 2.10112e+06 

$outliers$values[[1]]$metric 
[1] "1" 


$outliers$values[[2]] 
$outliers$values[[2]][[1]] 
[1] "e" "f" "g" "m" 

$outliers$values[[2]]$dimensionKey 
[1] 2.10112e+06 

$outliers$values[[2]]$metric 
[1] "2" 
+0

感謝您的想法!但如何使最後幾行看起來像我的: $ outliers $ values [[2]] $ dimensionKey ?您的回答在$ values – Marta

+0

@ user3227114之後沒有[[2]]對不起,現在解決方案更簡單了。 –

+0

非常感謝! – Marta