<div>Com o pacote "copula" instalado:</div>
<div> </div>
<div>- carregue-o: library(copula)</div>
<div> </div>
<div>- substitua "rMvdc" por "rmvdc"</div>
<div> </div>
<div>Estou formatando meu computador, estou sem acesso ao R, mas deve funcionar<br><br></div>
<div class="gmail_quote">Em 23 de novembro de 2012 21:23, Gabriel Bruno de Lemos <span dir="ltr"><<a href="mailto:gblemos@usp.br" target="_blank">gblemos@usp.br</a>></span> escreveu:<br>
<blockquote style="BORDER-LEFT:#ccc 1px solid;MARGIN:0px 0px 0px 0.8ex;PADDING-LEFT:1ex" class="gmail_quote">
<div lang="PT-BR" bgcolor="white" vlink="purple" link="blue">
<div>
<p class="MsoNormal"><span style="COLOR:#1f497d">Mauro, estranho pq aqui em meu computar esta função está rodando normalmente. Segue o código desta função e também o output fornecido pela rotina que passei...<u></u><u></u></span></p>
<p class="MsoNormal"><span style="COLOR:#1f497d"><u></u> <u></u></span></p><pre><span><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5;COLOR:blue" lang="EN-US">> </span></span><span><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5;COLOR:blue" lang="EN-US">rMvdc<u></u><u></u></span></span></pre>
<pre><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5" lang="EN-US">function (n, mvdc) <u></u><u></u></span></pre><pre><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5" lang="EN-US">{<u></u><u></u></span></pre>
<pre><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5" lang="EN-US"> dim <- mvdc@copula@dimension<u></u><u></u></span></pre><pre><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5" lang="EN-US"> </span><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5">u <- rCopula(n, mvdc@copula)<u></u><u></u></span></pre>
<pre><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5"> </span><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5" lang="EN-US">x <- u<u></u><u></u></span></pre><pre><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5" lang="EN-US"> for (i in 1:dim) {<u></u><u></u></span></pre>
<pre><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5" lang="EN-US"> </span><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5">qdf.expr <- asCall(paste0("q", mvdc@margins[i]), mvdc@paramMargins[[i]])<u></u><u></u></span></pre>
<pre><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5"> x[, i] <- eval(qdf.expr, list(x = u[, i]))<u></u><u></u></span></pre><pre><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5"> }<u></u><u></u></span></pre>
<pre><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5"> x<u></u><u></u></span></pre><pre><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5">}<u></u><u></u></span></pre>
<p class="MsoNormal"><span style="COLOR:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="COLOR:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="COLOR:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">> require(copula)<u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">> <u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">> myCop.clayton <- archmCopula(family = "clayton", dim = 3, param = 2)<u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">> <u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">> myMvd <- mvdc(copula = myCop.clayton, margins = c("exp", "norm",<u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">+ "chisq"), paramMargins = list(list(rate= 2), list(mean = 0,<u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">+ sd = 1), list(df=5)))<u></u><u></u></span></p>
<div class="im">
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">> <u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">> <u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">> myCop.t <- ellipCopula(family = "t", dim = 3, dispstr = "un",<u></u><u></u></span></p>
</div>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">+ param = c(0.8, 0.5,0.2), df = 8)<u></u><u></u></span></p>
<div class="im">
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">> <u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">> myMvd <- mvdc(copula = myCop.t, margins = c("exp", "norm","chisq"),<u></u><u></u></span></p>
</div>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">+ paramMargins = list(list(rate= 2), list(mean = 0,sd = 1), list(df=5)))<u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">> <u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">> x.samp <- rMvdc(10000,myMvd)<u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';COLOR:blue;FONT-SIZE:10pt" lang="EN-US">> cor(x.samp)<u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5;FONT-SIZE:10pt" lang="EN-US"> </span><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5;FONT-SIZE:10pt">[,1] [,2] [,3]<u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5;FONT-SIZE:10pt">[1,] 1.0000000 0.7194154 0.4536219<u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5;FONT-SIZE:10pt">[2,] 0.7194154 1.0000000 0.1652259<u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Lucida Console';BACKGROUND:#e1e2e5;FONT-SIZE:10pt">[3,] 0.4536219 0.1652259 1.0000000<u></u><u></u></span></p>
<p class="MsoNormal"><span style="COLOR:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="COLOR:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="COLOR:#1f497d"><u></u> <u></u></span></p>
<div>
<div style="BORDER-BOTTOM:medium none;BORDER-LEFT:medium none;PADDING-BOTTOM:0cm;PADDING-LEFT:0cm;PADDING-RIGHT:0cm;BORDER-TOP:#b5c4df 1pt solid;BORDER-RIGHT:medium none;PADDING-TOP:3pt">
<p class="MsoNormal"><b><span style="FONT-FAMILY:'Tahoma','sans-serif';FONT-SIZE:10pt">De:</span></b><span style="FONT-FAMILY:'Tahoma','sans-serif';FONT-SIZE:10pt"> Mauro Sznelwar [mailto:<a href="mailto:sznelwar@uol.com.br" target="_blank">sznelwar@uol.com.br</a>] <br>
<b>Enviada em:</b> quarta-feira, 21 de novembro de 2012 23:08<br><b>Para:</b> <a href="mailto:gblemos@usp.br" target="_blank">gblemos@usp.br</a><br><b>Assunto:</b> Re: [R-br] Simulação de variáveis correlacionadas usando Cópulas<u></u><u></u></span></p>
</div></div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<p class="MsoNormal"><span style="FONT-FAMILY:'Arial','sans-serif';COLOR:blue;FONT-SIZE:12pt">Tentei rodar o seu script e diz que este comando rMvdc não existe!</span><span style="FONT-FAMILY:'Times New Roman','serif';FONT-SIZE:12pt"><u></u><u></u></span></p>
</div>
<blockquote style="BORDER-BOTTOM:medium none;BORDER-LEFT:black 1.5pt solid;PADDING-BOTTOM:0cm;MARGIN:5pt 0cm 5pt 3.75pt;PADDING-LEFT:4pt;PADDING-RIGHT:0cm;BORDER-TOP:medium none;BORDER-RIGHT:medium none;PADDING-TOP:0cm">
<div>
<div class="h5">
<div>
<p class="MsoNormal"><span style="FONT-FAMILY:'Times New Roman','serif';FONT-SIZE:12pt"><u></u> <u></u></span></p></div>
<p class="MsoNormal">Boa noite a todos! Já tem algum tempo que estou tentando aprender um pouco mais sobre cópulas... e confesso que não está sendo a coisa mais simples do mundo.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Sinto falta de alguma aplicação (rotina no R) mais simples mostrando uma utilização aplicada deste tipo de função (principalmente para casos acima de 2 dimensões). Utilizo-a no meu trabalho para precificar portfólios... mas em um software caixa preta... <u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Hoje consegui rodar um pequeno exemplo de uma das possíveis utilidades destas cópulas. Gerar variáveis aleatórias correlacionadas... com as marginais possuindo QUALQUER função de distribuição de probabilidade (não ficando restrito ao caso da normal multivariada).<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Parece que está funcionando legal... se alguém tiver mais alguns exemplos ou possíveis correções na rotina abaixo será bem vinda!<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Abs<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><span lang="EN-US">require(copula)<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p>
<p class="MsoNormal">## Primeiro define-se a cópula a ser utilizada – “t” neste caso. O comando dispstr=”un” especifica que desejo informar 3 correlações diferentes na matriz de correlações.<u></u><u></u></p>
<p class="MsoNormal"><span lang="EN-US">myCop.t <- ellipCopula(family = "t", dim = 3, dispstr = "un",<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US"> param = c(0.8, 0.5,0.2), df = 8)<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p>
<p class="MsoNormal">## Definida a cópula, especifico quais marginais desejo que minha função possua. Neste caso defini exponencial, normal e qui-quadrado.<u></u><u></u></p>
<p class="MsoNormal"><span lang="EN-US">myMvd <- mvdc(copula = myCop.t, margins = c("exp", "norm","chisq"),<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US"> paramMargins = list(list(rate= 2), list(mean = 0,sd = 1), list(df=5)))<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">x.samp <- rMvdc(10000,myMvd)<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">cor(x.samp)<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">par(mfrow=c(1,3))<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">hist(x.samp[,1])<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">hist(x.samp[,2])<u></u><u></u></span></p>
<p class="MsoNormal">hist(x.samp[,3])<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Arial','sans-serif';FONT-SIZE:9pt">Gabriel Bruno de Lemos<u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Arial','sans-serif';FONT-SIZE:9pt">Mestrando em <span>Estatística e Experimentação Agronômica</span></span><u></u><u></u></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Arial','sans-serif';FONT-SIZE:9pt">Esalq / Usp<u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Arial','sans-serif';FONT-SIZE:9pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Arial','sans-serif';FONT-SIZE:9pt">skype: gb_lemos<u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Arial','sans-serif';FONT-SIZE:9pt">msn: <a href="mailto:gb_lemos@hotmail.com" target="_blank">gb_lemos@hotmail.com</a></span><u></u><u></u></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Arial','sans-serif'"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Arial','sans-serif';FONT-SIZE:9pt">(19) 8212-6999<u></u><u></u></span></p>
<p class="MsoNormal"><span style="FONT-FAMILY:'Arial','sans-serif';FONT-SIZE:9pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p></div></div>
<p class="MsoNormal"><span style="FONT-FAMILY:'Times New Roman','serif';FONT-SIZE:12pt">.<u></u><u></u></span></p></blockquote></div></div><br>_______________________________________________<br>R-br mailing list<br>
<a href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br><a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
Leia o guia de postagem (<a href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça código mínimo reproduzível.<br></blockquote></div><br>