2016-06-28 3 views
-1

クラスRVineMatrixとコピュラファミリのオブジェクトはほとんどありません。これらの2つのオブジェクトのすべての組み合わせを呼び出して、関数内でそれらを比較する必要があります。もちろん、ループを使用せずに手動で2つの組み合わせを選択することはできますが、2つの「for」ループではるかに簡単です。私はリスト内のすべてのオブジェクトを集計し、そのリストの要素として2つのループでそれらを呼び出しましたが、その方法でクラスが "リスト"に変更されることに気付きました。Copula、lmのような異なるクラスのオブジェクトを単一のオブジェクトに集約し、それらの元のクラスを保持し、それらをRのループで呼び出す方法は?

AllCopula=list(RVM1,RVM2, RVM3,RVM4) 


for (ic in 1:size(AllCopula)[2]){ 
for (ic2 in 1:size(AllCopula)[2]){ 
TestTable[ic,ic2]<- TestCopula(DesingData,AllCopula[ic],AllCopula[ic2]) 
} 
} 

任意のヘルプは充当されます。ありがとう。

答えて

0

リストには、このコード例で見ることができるように、元のクラスを維持する必要があります。したがって

> require(xts) 
> test <- xts(NA, Sys.Date()) 
> vec1 <- seq(1:10) 
> typeof(test) 
[1] "logical" 
> typeof(vec1) 
[1] "integer" 
> l <- list(test, vec1) 
> typeof(l) 
[1] "list" 
> typeof(l[1]) 
[1] "list" 
> typeof(l[[1]]) 
[1] "logical" 
> typeof(l[[2]]) 

、あなたは自分のループの中で、リストから右の要素を取得する必要があり、二重括弧を試してみてください[[] ]。

関連する問題