2015-06-18 4 views
0

Мне нужно использовать копулы для создания большой выборки размера n. Проблема в том, что процедура занимает много времени, так как мне нужно воссоздать точно такие же копулы n раз.использовать «массив» для хранения объектов

То, что я пытаюсь найти, это способ хранения связок в виде массива, поэтому я создаю копулы один раз, сохраняю их и использую их n раз.

В R, идея что-то вроде этого: заполнить верхнюю левую диагональную матрицу с связками в какое-то двумерный контейнер (названной Копула)

for(r in 1:dimension){ 
    for(c in 1:(dimension+1-r)){ 
     Copula[r,c] = getCopula(copulaStr, Pcopula[r,c]) 
    } 

}

, так что затем Я могу получить доступ к копуле i, j (Copula [i, j]), как если бы это был массив.

В копулах я tryinng к болячкам являются:

class(getCopula('frankCopula', 2)) 

[1] "frankCopula" 
attr(,"package") 
[1] "copula" 
+2

Просто сделайте список списка, скажем, внешний список для строк и внутреннего списка для столбцов ... – Gregor

+0

Не редактируйте свой вопрос, чтобы включить «ответы». если вы решите проблему самостоятельно, добавьте правильный ответ ниже и примите его, нажав зеленую галочку (это нормально, чтобы ответить на собственный вопрос). Таким образом, вопрос отмечен как ответ. – MrFlick

ответ

0

А может решить эту проблему путем создания массива списков

mat<-matrix(list(), nrow = dimension, ncol = dimension) 
for(r in 1:(dimension+1-r)){ 
    for(c in 1:dimension){ 
     mat[[r,c]] = obterCopula(copulaStr, Pcopula[r,c]) 
    } 
} 
Смежные вопросы