1

次の問題を回避するクリーンな方法は何ですか? do.call を使用して Zoo オブジェクトのリストを cbind したいと考えています。

>> zz <- list( zoo(1:10,1:10), zoo(101:110,1:10), zoo(201:210,1:10) )
>> names(zz)<-c('test','bar','foo')
>> do.call(cbind,zz)
>    test bar foo
> 1     1 101 201
> 2     2 102 202
> 3     3 103 203
> 4     4 104 204
> 5     5 105 205
> 6     6 106 206
> 7     7 107 207
> 8     8 108 208
> 9     9 109 209
> 10   10 110 210
>> names(zz)<-c('test','all','foo')
>> do.call(cbind,zz)
>    test foo
> 1     1 201
> 2     2 202
> 3     3 203
> 4     4 204
> 5     5 205
> 6     6 206
> 7     7 207
> 8     8 208
> 9     9 209
> 10   10 210

「all」は cbind.zoo への引数の 1 つの名前であるため:

R> args(cbind.zoo)
function (..., all = TRUE, fill = NA, suffixes = NULL, drop = FALSE)
NULL

do.call は、次のような呼び出しを構築します。

R> cbind(test=zz$test, all=zz$all, foo=zz$foo)

「fill」、「suffixes」、または「drop」という名前のリスト要素についても同じことが起こります。

4

1 に答える 1