r multivariada

126
Universidade Federal de Lavras Departamento de Ci ˆ encias Exatas Estat´ ıstica Computacional Utilizando R Daniel Furtado Ferreira danielff @dex.ufla.br Lavras Minas Gerais - Brasil 11 de dezembro de 2014

Upload: pablo

Post on 17-Aug-2015

286 views

Category:

Documents


3 download

DESCRIPTION

Curso de R Multivariada

TRANSCRIPT

Universidade Federal de LavrasDepartamento de Ciencias ExatasEstatsticaComputacionalUtilizandoRDanielFurtadoFerreiradaniel@dex.ua.brLavrasMinasGerais-Brasil11dedezembrode2014iiFerreira,D.F. EstatsticaComputacionalPrefacioNestasnotasdeaulativemosainten caodeabordarotemadeestatsticacom-putacional que e tao importante para a comunidade cientca e principalmente paraos estudantes dos cursos depos-graduacaoemestatstica. Podemos armar semmedodeerrarqueaestatsticacomputacional setornoueehojeemdiaumadasprincipaisareasdaestatstica. Alemdomais, osconhecimentosdestaareapodemsere, frequentemente, saoutilizadosemoutrasareasdaestatstica, daengenhariaedafsica. AinferenciaBayesiana eumdestesexemplostpicosemquegeralmenteutilizamos uma abordagem computacional. Quando pensamos nestas notas de aulastivemos muitas d uvidas do que tratar e como abordar cada topico escolhido. Assim,optamosporescreveralgoquepropiciasseaoleitoriralemdeumsimplesreceitua-rio, mas que, no entanto, nao o zesse perder em um emaranhado de demonstracoes.Por outro lado buscamos apresentar os modelos e os metodos de uma forma bastanteabrangenteenaorestritiva.Umaoutramotivacaoquenosconduziuenosencorajouadesenvolverestepro-jeto, foianossaexperienciapessoalempesquisascomaestatsticacomputacional.Tambemzemosissopensandonobenefciopessoal, naopodemosnegar, queissonostrariaaoentrarmosemcontatodiretocomavastapublicacaoexistentenesteramodaestatstica. Naotemos, todavia, aintencaodeestudarmos todos os as-suntos enemmesmopretendemos paraumdeterminadotopicoesgotar todas aspossibilidades. Pelocontrario, esperamosqueestasnotassejamumaintroducaoaestatsticacomputacionalequesirvamdemotiva caoparaqueosalunosdoscursosdegraduacaoemestatsticapossamseadentraraindamaisnessaarea.Estas notas sao baseadas em um livro que estamos escrevendo sobre a estatsticacomputacional utilizando a linguagem Pascal. A adaptacao para o R de algumas dasrotinasimplementadasnestelivrofoi umatarefabastanteprazerosaereveladora.EstatsticaComputacional Ferreira,D.F.ivAproveitamosestaoportunidadeparadesvendarumpoucodosin umerossegredosque este poderoso programa possui e descobrir um pouco sobre seu enorme potencialetambem,porquenaodizer,desuasfraquezas. Nessaprimeiraversaonaoespera-mosperfei cao,masestamoscompletamentecientesquemuitasfalhasdevemexistire esperamos contar com a colaborac ao dos leitores para sana-las. Estamos iniciandouma segunda versao revisada e ampliada, utilizando ainda o Sweave, que integra o Rao LATEX. Essas notas serao constantemente atualizadas na internet. Esperamos queestemanuscritovenhacontribuirparaocrescimentoprossionaldosestudantesdenossoprogramadepos-graduacaoemEstatsticaeExperimenta caoAgropecuaria,alemdeestudantesdeoutrosprogramasdaUFLAoudeoutrasinstituicoes. Dessaformanossoobjetivoterasidoatingido.DanielFurtadoFerreira11dedezembrode2014Ferreira,D.F. EstatsticaComputacionalSumarioPrefacio iiiListadeTabelas viiListadeFiguras ix1 IntroducaoaoProgramaR 11.1 Introdu caoaoR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.2 EstruturasdeControledeProgramacao . . . . . . . . . . . . . . . . 91.3 FuncoesnoR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151.4 Introdu caoaEstatsticaComputacional . . . . . . . . . . . . . . . . 181.5 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 GeracaodeRealizacoesdeVariaveisUniformes 232.1 N umerosAleatoriosUniformes . . . . . . . . . . . . . . . . . . . . . 242.2 N umerosAleatoriosUniformesnoR . . . . . . . . . . . . . . . . . . 312.3 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 GeracaodeRealizacoesdeVariaveisAleatoriasNao-Uniformes 353.1 Introdu cao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353.2 MetodosGeraisparaGerarRealiza coesdeVariaveisAleatorias . . . 363.3 VariaveisAleatoriasdeAlgumasDistribuicoesImportantes . . . . . 453.4 RotinasRparaGeracaodeRealiza coesdeVariaveisAleatorias . . . 583.5 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614 GeracaodeAmostrasAleatoriasdeVariaveisMultidimensionais 654.1 Introdu cao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65EstatsticaComputacional Ferreira,D.F.vi SUMARIO4.2 Distribui caoNormalMultivariada . . . . . . . . . . . . . . . . . . . . 664.3 Distribui caoWisharteWishartInvertida . . . . . . . . . . . . . . . 724.4 Distribui caotdeStudentMultivariada. . . . . . . . . . . . . . . . . 774.5 OutrasDistribuicoesMultivariadas . . . . . . . . . . . . . . . . . . . 804.6 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 805 AlgoritmosparaMedias,VarianciaseCovariancias 835.1 Introdu cao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835.2 AlgoritmosUnivariados . . . . . . . . . . . . . . . . . . . . . . . . . 845.3 AlgoritmosparaVetoresMediaseMatrizesdeCovariancias . . . . . 885.4 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 916 AproximacaodeDistribuicoes 936.1 Introdu cao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936.2 ModelosProbabilsticosDiscretos. . . . . . . . . . . . . . . . . . . . 956.3 ModelosProbabilsticosContnuos . . . . . . . . . . . . . . . . . . . 1006.4 FuncoesPre-ExistentesnoR . . . . . . . . . . . . . . . . . . . . . . 1116.5 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111ReferenciasBibliogracas 113IndiceRemissivo 115Ferreira,D.F. EstatsticaComputacionalListadeTabelas3.1 Distribui coesdeprobabilidades,nomeReparametrosdosprincipaismodelosprobabilstico. . . . . . . . . . . . . . . . . . . . . . . . . . . 59EstatsticaComputacional Ferreira,D.F.viii LISTADETABELASFerreira,D.F. EstatsticaComputacionalListadeFiguras3.1 Ilustra caodoteoremafundamentaldatransforma caodeprobabilida-desparagerarumavariavelaleatoriaXcomdensidadef(x) = F

(x). 373.2 Metododarejeicaoparagerarumvalorx0davariavel aleatoriaXcomfuncaodensidadef(x) queemenor doqueg(x) paratodox.Nessailustra cao,x0deveseraceito. . . . . . . . . . . . . . . . . . . 393.3 Ilustra caogracadoalgoritmoMetropolis-Hastings, apresentandoafuncaodetransicaoq(x; xt)eatransicaodex1parax2pormeiodoalgoritmodepasseioaleatorio. . . . . . . . . . . . . . . . . . . . . . . 423.4 Crculounitariomostrandoumpontoaleatorio(u1,u2)comr2=u21+u22representandox1eoanguloqueoponto(u1, u2)determinaemrelacaoaoeixo1. Noexemplo, opontoestasituadonocrculounitario,conforme eexigido. . . . . . . . . . . . . . . . . . . . . . . . 48EstatsticaComputacional Ferreira,D.F.x LISTADEFIGURASFerreira,D.F. EstatsticaComputacionalCaptulo1IntroducaoaoProgramaROprogramaR(RDevelopmentCoreTeam, 2006[14])foi escolhidoparaminis-trarestecursoporumaseriederazoes. Alemdeserumprogramalivre,nosentidodepossuirlivredistribui caoecodigofonteaberto, podeserutilizadonasplatafor-masWindowseUnix. Alemdomais,oRpossuigrandeversatilidadenosentidodepossuirin umerospacotesjaprontosenospossibilitarcriarnovasrotinasefuncoes.OReaversaolivrebaseadanalinguagemS, cujaversaocomercialeoS-Plus. OprogramaSAS, poroutrolado, eoprogramaestatsticomaisantigoedeextremaaceitacaonomeiocientco, masoR, nos ultimosanos,eomaispopular. Opro-gramaRporsergenuinamenteumprogramaorientadoporobjetonospossibilitaprogramarcommuitaecienciaeversatilidade. Outroaspectoque ebastanteatra-tivonoRrefere-seaofatodeomesmorecebercontribuicoesdepesquisadoresdetodo o mundo na forma de pacotes. Essa e uma caracterstica que faz com que hajagrandedesenvolvimentodoprogramaemrelativamentecurtosespacosdetempoequenospossibilitaencontrarsolucoesparaquasetodososproblemascomosquaisnosdeparamosemsituacoesreais. Paraosproblemasquenaoconseguimosencon-trar solucoes, oambientedeprogramacaoRnos possibilitacriar nossas propriassolucoes.Nestas notas de aulas pretendemos apresentar os conceitos basicos da estatsticacomputacionaldeumaformabastantesimples. Inicialmenteobteremosnossaspro-priassolu coesparaumdeterminadometodooutecnicaeemumsegundomomentomostraremosquepodemosteramesmasolucaoprontadoprogramaRquandoestaestiver disponvel. Particularmente neste captulovamos apresentar algumas ca-EstatsticaComputacional Ferreira,D.F.2 IntroducaoaoProgramaRractersticasdoambienteedalinguagemRparaimplementarmosnossassolu coes.Nossocursonaopretendedar solucoes avancadas edeecienciamaximaparaosproblemasqueabordaremos, maspropiciaraosalunosumprimeirocontatocomalinguagemR(ouS)ecomosproblemasdaestatsticacomputacional. AlinguagemReumdialetodalinguagemSquefoi desenvolvidaem1980eseespalhoupelacomunidadecientcadesdeentao.AdesvantagemequeoRnaoeumprogramafacil deaprender. Algunsesfor-cosiniciaissaonecessariosatequeconsigamosobteralgumbenefcio. Naotemosainten caodeapresentarnestecursoosrecursosdoRparaanalisesdemodeloslinea-resdepostocompletoouincompleto, demodelosnao-lineares, demodeloslinearesgeneralizados ou de gracos. Eventualmente poderemos utilizar algumas destas fun-coescomoumpassointermediariodasolucaodoproblemaqueestaremosfocando.Estematerialseraconstrudocomaabordagemteoricadotopicoeassociaraexem-plica coespraticasdosrecursosdeprogramacaoRpararesolveralgumproblemaformulado,emcasosparticularesdateoriaestudada.Estematerial eapenasumaprimeiraversaoquedeveratermuitosdefeitos. As-sim,oleitorqueencontra-losoutiverumamelhorsolucaoparaoproblemapoderacontribuirenviandoume-mailparadaniel@dex.ua.br.1.1 IntroducaoaoRNoRossmbolosouvariaveiss aoobjetosepodemterasmaisvariadasestru-turas,taiscomovetores,matrizes,dataframes,listas,funcoes,expressoesemuitosoutras. Vamosdescreverdeformasucintaegradativaalgumasdestesobjetos.Os vetores sao compostos de celulas contguas de dados homogeneos. Os vetorespodemserdevariostiposcomo, porexemplo, logicos, inteiros, reaisecaracteres.Omodomaissimplesdecriarumvetoreutilizar>xx[j], emquej =1, 2,, 5eotamanhodovetorpor> length(x). Sequeremosveroresultadodoobjetonatela,devemos digitar o nome dele no prompt do R da seguinte forma > x. Podemos criarumvetorcombinandodoisvetoresx, intercaladosporzerodaseguinteforma: >y # uteis para lidarmos com eles. Todos os textos apos #> # ser~ao considerados comentarios> x x # imprime o vetor[1] 2.0 3.0 4.0 5.1 3.2> y y # imprime o vetor[1] 2.0 3.0 4.0 5.1 3.2 0.0 1.0 2.0 3.0 4.0 5.1 3.2> z w w # imprime o vetor w[1] 7.4 8.3 12.4 13.3 13.1> rx rx # imprime o vetor rx[1] 2.0 5.1> lx lx # imprime lx[1] 5> x1 x1 # imprime x1[1] 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5[11] 6.0 6.5 7.0 7.5 8.0 8.5 9.0 9.5 10.0EstatsticaComputacional Ferreira,D.F.4 IntroducaoaoProgramaR> xr1 xr2 xr1 # imprime xr1[1] 2.0 3.0 4.0 5.1 3.2 2.0 3.0 4.0 5.1 3.2 2.0 3.0[13] 4.0 5.1 3.2 2.0 3.0 4.0 5.1 3.2 2.0 3.0 4.0 5.1[25] 3.2> xr2 # imprime xr2[1] 2.0 2.0 2.0 2.0 2.0 3.0 3.0 3.0 3.0 3.0 4.0 4.0[13] 4.0 4.0 4.0 5.1 5.1 5.1 5.1 5.1 3.2 3.2 3.2 3.2[25] 3.2Osvetorespodemserutilizadosemexpressoesaritmeticas, sendoasoperacoesrealizadas elemento a elemento. As opera coes elementares sao +, , , / e para po-tencia cao. Varios outros operadores aritmeticos sao disponveis,como porexemplo,log,exp,sin,cos,tanesqrt. Func oescomorangeretornamumvetordetamanhodois compostopelos valores c(min(x), max(x)) eooperador length(x) retornaotamanhodovetorx.Podemos gerar sequencias regulares no programa R facilmente. A instru cao x y # imprime o vetor[1] FALSE FALSE FALSE TRUE FALSE> z z # imprime o vetor[1] TRUE TRUE TRUE FALSE TRUE> w w2 =3.0] # elementos de x >= 3, adicionados de 1> w2 # imprime o vetor w2[1] 5.7 6.1 4.2O R nos possibilita lidar com arranjos de varias dimensoes. Vamos utilizar nestematerial apenasoarranjomaissimplesdeduasdimensoesquesaoasmatrizes. Aformamaissimplesdegerarmosumamatrizeutilizarocomandomatrix(0, n, p).Estecomandonospermitegerarumamatrizcompostadeelementosiguaisazeroededimensoeslinhaecolunaiguaisanep, respectivamente. OselementosdestaEstatsticaComputacional Ferreira,D.F.6 IntroducaoaoProgramaRmatriz(A)saopreenchidosatribuindo, porexemplo, nalinhaiecolunaj, ovalordesejado 10 da seguinte forma A[i,j] v v # imprime o vetor resultante[1] 31 1> AI AI # imprime a matriz resultante[,1] [,2][1,] 0.2857143 -0.1428571[2,] -0.1428571 0.5714286> ev ev$vec # imprime os autovetores[,1] [,2][1,] -0.9238795 0.3826834[2,] -0.3826834 -0.9238795> ev$values # imprime os autovalores[1] 4.414214 1.585786> udv udv # imprime todos os resultados da lista: DVSEstatsticaComputacional Ferreira,D.F.8 IntroducaoaoProgramaR$d[1] 4.414214 1.585786$u[,1] [,2][1,] -0.9238795 -0.3826834[2,] -0.3826834 0.9238795$v[,1] [,2][1,] -0.9238795 -0.3826834[2,] -0.3826834 0.9238795Muitos outros objetos existem no R e serao descritos oportunamente, na medidaqueapareceremnasfuncoesquedesenvolveremosposteriormente. Vamossomentedescrever, para nalizar, como podemos ler um arquivo de dados no formato texto eassocia-loaumobjetoR.Vamosimaginarquetenhamosumarquivodedadoscomduas variaveis X1e X2e n = 20 observacoes. Devemos criar um arquivo com algumeditor detexto, ondenaprimeiralinhacolocamosaidenticacaodecadacoluna(variavel). Nesteexemplovamoscriarumarquivocomonome dados.txt.Paralerestesdadosdoarquivoeassocia-loaumobjetoRdotipodataframe,devemosutilizarocomandoread.table(). Ocomandoeusadodaseguinteforma:read.table(dados.txt,header=TRUE). A opcao header=TRUEindica ao R que nossoarquivopossuinaprimeiralinhaaidenticacaodasvariaveis. Noexemploaseguirapresentamos detalhes destes comandos em um pequeno programa R.E convenientemudarmos o diretorio de trabalho para o local onde se encontra o arquivodados.txtno menu FileChange dirdo R. Tambem podemos mudar o diretorio com o comando:setwd(C:/daniel/Cursos/Estatistica computacional/Apostila). Se quisermos editaros dados e atribu-los a um novo objeto (data frame), devemos utilizar o comando >edit(dados). Um planilha sera aberta para que sejam efetuadas as trocas necessarias.Oarquivodedados eX1 X213.4 1414.6 1513.5 1915.0 2314.6 17Ferreira,D.F. EstatsticaComputacional1.2EstruturasdeControledeProgramacao 914.0 2016.4 2114.8 1615.2 2715.5 3415.2 2616.9 2814.8 2416.2 2614.7 2314.7 916.5 1815.4 2815.1 1714.2 14eoprograma> # programa R demonstrando a leitura de arquivos de dados> dados #dados.novo x 23 farao a mesma coisa, mas no primeiro caso o resultado earmazenado no objeto x e no segundo o seu valor e retornado na janela de consoledoEstatsticaComputacional Ferreira,D.F.10 IntroducaoaoProgramaRR. Vejamos o exemplo de alguns comandos com uso de agrupamentos no programa aseguir. Observe que nos comandos que se estendem por mais de uma linha, o prompt>sealterapara+,aguardandoqueacontinuacaodocomandosejadigitada.> # programa R demonstrando comandos agrupados e comandos> # em mais de uma linha e em apenas uma linha> x x {+ x z # programa R demonstrando alguns usos do if/else> x if (x > 0.5) y z if (any(z dtdf # Este exemplo pretende mostrar a gerac~ao de normais (mu=0, sig=1) com> # uso de uma candidata t(nu=3).> # Vamos utilizar rtdf(n,media,sigma2,df) para gerar dados da t.> MH_Norm = function(n, mu=0, sig=1)+ {+ nu y xb xb # media x[1] 10.22327 50.09762> var(x) # covari^ancia x[,1] [,2][1,] 3.857491 1.7472874[2,] 1.747287 0.89949244.3 DistribuicaoWisharteWishartInvertidaAsdistribuicoesWisharteWishartinvertidasaorelativas`asmatrizesdesomasdequadradoseprodutosnao-corrigidasWobtidasdeamostrasdetamanhodadistribui caonormalmultivariadacommedia0. ConsidereXj= [X1,X2,,Xp]

oj-esimovetor(j=1, 2,, )deumaamostraaleatoriadetamanhodeumanormalcommedia0ecovariancia,entaoamatrizaleatoriaW=

j=1XjX

jpossui distribuicao Wishart com graus de liberdade e parametro (matriz positivadenida).Damesmaforma,setemosumaamostraaleatoriadetamanhondeumadistri-buicaonormalmultivariadacommediaecovariancia,adistribuicaodamatrizFerreira,D.F. EstatsticaComputacional4.3DistribuicaoWisharteWishartInvertida 73aleatoriaW=n

j=1(Xj X)(Xj X)

eWishartcom= n 1grausdeliberdadeeparametro.A fun cao densidade Wishart de uma matriz aleatoria Wde somas de quadradoseprodutoserepresentadaporWp(,) edenidapor:fW(w[,) =[[/2[w[(p1)/22p/2p(p1)/4p

i=1_ i + 12_ exp_12tr_1w__(4.3.1)emque(x) =_0tx1exdt efun caogama.Assim, paragerarmosvariaveisWishartcomparametrosinteiroepositivadenida, podemos utilizar um gerador de amostras aleatorias normais multivariadase obter a matriz de somas de quadrados e produtos amostrais. Esta matriz sera umarealiza caodeumavariavelaleatoriaWishart,que eumamatrizdedimensaop p.Aseguintefuncaopodeserutilizadaparaobtermosrealiza coesaleatoriasdeumaWishart:> # Exemplificac~ao para gerarmos matrizes de somas de quadrados e produtos> # aleatorias W com distribuic~ao Wishart(nu, Sigma)> # utiliza o pacote mvtnorm para gerar amostras normais.>> rWishart # Exemplificac~ao para gerarmos matrizes de somas de quadrados e produtos> # aleatorias W com distribuic~ao Wishart(nu, Sigma) e Wishart invertida> # WI(nu, Sigma). Utiliza o pacote mvtnorm para gerar amostras normais.>> rWishart jetij= 0sei < j. Nasequenciadevemosobteramatriz = TT

,quepossuidistribui caoWp(, I). DestaformaobteremosW=1/21/2comadistribuicaodesejada, ouseja, comdistribuicaoWp(,). FicaclaroquecomessealgoritmopodemosgerarvariaveisWishartcomgrausdeliberdadereaisouinteiros.> # Func~ao mais eficiente para gerarmos matrizes de somas de quadrados> # e produtos aleatorias W com distribuic~ao Wishart(nu, Sigma) e> # Wishart invertida WI(nu, Sigma)>> rWWI rtmult Sigma mu x var(x) # valor esperado e nu Sigma/(nu - 2)[,1] [,2][1,] 11.465579 5.390314[2,] 5.390314 2.807334> nu * Sigma / (nu - 2) # valor esperado[,1] [,2][1,] 12.0 5.7[2,] 5.7 3.0> plot(x)30 10 0 1025201510505rtmult(2000, c(0, 0), diag(2), nu)[,1]rtmult(2000, c(0, 0), diag(2), nu)[,2]20 0 10 30105051015x[,1]x[,2]Podemos utilizar aimplementacaodeterminadapelafuncaormvt, dopacotemvtnorm, paragerarmosdadosdadistribuicaotmultivariada. Grausdeliberdadereaispositivospodemserutilizadoscomoargumentodafun cao. Foramgeradas,noexemploanterior, duasamostrasaleatoriasparailustrar. Foramdenidosparaosparametrosmu,e,osvalores[0,,0,0]

,I3e3,respectivamente,comodefault.EstatsticaComputacional Ferreira,D.F.80 GeracaodeAmostrasAleatoriasdeVariaveisMultidimensionais4.5 OutrasDistribuicoesMultivariadasExistemmuitas outras distribuicoes multivariadas. Vamos mencionar apenasmais duas delas: a log-normal e a normal contaminada multivariadas. A gera cao deumvetorcolunaaleatoriodedimensaopcomdistribui caolog-normalmultivariadaefeitatomando-seoseguintevetor W=[exp(Z1), exp(Z2),, exp(Zp)]

, emque Z Np(, ). Para gerarmos realizacoes da normal contaminada multivariadaconsideramos a simulacao de um vetor aleatorio Xcuja densidade de probabilidadeedadapor:fX(x) =(2)p/2[1[1/2exp_(x 1)

11(x 1)2_+ (1 )(2)p/2[2[1/2exp_(x 2)

12(x 2)2_emqueipositivadenida,i = 1, 2e0 1.4.6 Exerccios4.6.1 Gerarumaamostradetamanho(n = 10)umadistribui caonormaltrivariadacomvetordemedias = [5,10, 15]

ematrizdecovariancias =__5 1 21 3 22 2 7__.Estimaramediaeacovarianciaamostral. Repetiresteprocesso1.000vezeseestimaramediadasmediasamostraiseamediadasmatrizesdecovarianciasamostrais. Estes valores correspondemexatamente aos respectivos valoresesperados?Senao,apresentara(s)principal(is)causa(s).4.6.2 Apartir daaltera caodafun caornormmv, realizadaparaque amatriz X(np)deobservacoesmultivariadasnormaissejaobtidasemanecessidadedeutiliza caooloop, ouseja, semaestruturaderepeti caodeterminadapelocomando for, funcao rnormmultv, utilizar o fator de Cholesky, no lugar da ma-triz raiz quadrada obtida a partir da decomposi cao espectral de . Vericar sehouve melhoria no desempenho em relacao ao tempo medio de processamentoFerreira,D.F. EstatsticaComputacional4.6Exerccios 81de cada variavel aleatoria, vetor p-dimensional. Testar isso usando um grandevalorparan.4.6.3 ParagerarvariaveisWisharteWishartinvertidademonstrarcomoutilizarasfuncoesrwishart dopacotebayesmerwishdopacoteMCMCpack.4.6.4 Sabemos que variaveis Wishart possuem media . Apresentar um programapara vericar se o valor esperado, ignorando o erro de Monte Carlo, e alcancadocomousodas funcoes apresentadas paragerar variaveis Wishart. Utilizar10.000repeti coesdeMonteCarlo. Issoseriaumaformasimples,emboranaoconclusiva,dechecarseafuncaoestarealizandoassimula coescorretamente.4.6.5 Implementar funcoes R para gerarmos variaveis aleatorias log-normal e normal-contaminadaelpticasmultivariadas.4.6.6 ImplementarumafuncaoRparagerarmosvariaveisaleatoriastmultivariadacomparametros, ededimensaop. Utilizarvetordemedias Rpqualquer, naonecessariamentenulo. Tambempossibilitaraespecica caodevaloresreaispositivosparaoparametro, comonartmult, massubstituirogerador qui-quadrado pelo gerador gama de realizacoes de variaveis aleatorias,oquediferenciariaafuncaoaserdesenvolvidadartmult.EstatsticaComputacional Ferreira,D.F.82 GeracaodeAmostrasAleatoriasdeVariaveisMultidimensionaisFerreira,D.F. EstatsticaComputacionalCaptulo5AlgoritmosparaMedias,VarianciaseCovarianciasMuitosalgoritmosparaocalculodemedias, varianciasecovarianciassaoim-precisos,podendogerarresultadosnaiscontendograndeserros. Anecessidadedeutilizarmos algoritmos ecientes para realizarmos estas tarefas simples sao evidenteseseraodescritosnestecaptulo.5.1 IntroducaoFelizmenteoRutilizaalgoritmosprecisosparacalculodamedia,davarianciaedecovariancia. Vamosbuscaresclarecercomoautiliza caodealgoritmoinecientespodem levar a resultados inconsistentes e imprecisos. Nosso objetivo neste captulo eapresentar os algoritmos ecientes para estimarmos estes parametros e mostrar comoasformulasconvencionaispodemfalharseutilizadasnosalgoritmosdiretamente.Estesalgoritmosecientessaoparticularmente uteisquandoosdadospossuemgrandemagnitudeouestaomuitoproximosdezero. Nestecasoparticular,algumasplanilhas eletronicas, comooExcel nas suas versoes mais antigas, podiamfalhar(McCullougheWilson, 1999[10]). Oconhecimentodealgoritmos queconduziraoamaioresprecisoesnumericaspodelevaropesquisadoranaocometerosmesmoserrosencontradosemalgunssoftwares.EstatsticaComputacional Ferreira,D.F.84 AlgoritmosparaMedias,VarianciaseCovariancias5.2 AlgoritmosUnivariadosAideiabasicadeutilizarmosalgoritmosparamedia, paraasomadepotenciasdosdesviosemrela caoamediaouparasomadeprodutosdedesvioseaplicarmosrecursivamente as formulas existentes. Se desejamos, por exemplo, obter a media denobservacoes, podemosinicialmentecalcularamediadaprimeiraobserva cao, queeapropria. Emumsegundoestagio, proporumaexpressaoparaatualizarmosamediadaprimeiraobservacao,contemplandoasegundaeassimsucessivamente. Omesmoprocedimentodeatualiza caoeaplicado`asvarianciasou`ascovariancias,nocasodetermosmaisdeumavariavel.Para uma amostra de tamanho n dada por X1, X2,, Xn, a media e a varianciaamostralconvencionaissaoobtidas,respectivamente,por:X.=n

i=1Xin, (5.2.1a)S2=1n 1__n

i=1X2i _n

i=1Xi_2n__. (5.2.1b)Alguns algoritmos existentes procuraram melhorar os algoritmos dos livros textosquesaoas formulas das equacoes (5.2.1ae 5.2.1b) procurandofazer adaptacoes,repassandoaamostraduasvezes. Estesalgoritmospodemserecientesdopontodevistadaprecisao, masnaosaorapidos, justamenteporrepassaremduasvezesosdados. West(1979)[17]proposutilizarumalgoritmoquefazuma unicapassada,atualizandoamediaeavarianciaemcadanovaobserva cao. Podemosfacilmentemostrarqueparaumaamostradetamanhon, queamediaeigual aX1sen=1,(X1+X2)/2 se n = 2 e assim por diante. No (k1)-esimo passo podemos especicaroestimadordamediapor:Xk1=k1

i=1Xik 1.Nok-esimopassoteremosobservadoXkeamediaatualizada e:Ferreira,D.F. EstatsticaComputacional5.2AlgoritmosUnivariados 85Xk=k

i=1Xik. (5.2.2)Aperguntaquefazemosepodemos expressar amediadok-esimopassoemfuncaodamediado(k 1)-esimopasso? Arespostaaestaperguntae simeoresultadonosforneceoalgoritmodesejado. Entao, apartirdaequacao(5.2.2)obtemos:Xk=k1

i=1Xi +Xkk=(k 1)k1

i=1Xi(k 1)k+Xkk=(k 1) Xk1k+Xkk= Xk1 Xk1k+XkkresultandonaequacaorecursivanalXk= Xk1 +Xk Xk1k, (5.2.3)para2 k n,sendoqueX1= X1.Damesmaformasedenirmosasomadequadradoscorrigidasdaskprimeirasobservacoesamostrais1 < k npor:W2k=k

i=1X2i _k

i=1Xi_2kveremos que a variancia correspondente e dada por S2k= W2k/(k 1). Se expandir-mos esta expressao isolando o k-esimo termo e simplicarmos a expressao resultanteteremos:EstatsticaComputacional Ferreira,D.F.86 AlgoritmosparaMedias,VarianciaseCovarianciasW2k=k1

i=1X2i+X2k _k1

i=1Xi +Xk_2k=W2k1 +k_Xk Xk_2/(k 1) (5.2.4)Aexpressaoquedesenvolvemos (5.2.4) eequivalenteaapresentadapor West(1979)[17]. Issopodeser demonstradofacilmentesesubstituirmosXkobtidanaequacao(5.2.3)naequacao(5.2.4),deondeobtivemos:W2k=W2k1 + (k 1)_Xk Xk1_2/k (5.2.5)para2 k n,sendoqueW21= 0. Avariancia eobtidaporS2= W2n/(n 1).Parademonstrarmosdiretamenteaexpressao(5.2.5)temos:W2k=k1

i=1X2i+X2k _k1

i=1Xi +Xk_2k=k1

i=1X2i+X2k _k1

i=1Xi_2+ 2Xkk1

i=1Xi +X2kk=k1

i=1X2i+X2k (k 1)_k1

i=1Xi_2+ 2(k 1)Xkk1

i=1Xi + (k 1)X2kk(k 1)=k1

i=1X2i _k1

i=1Xi_2k 1+X2k+_k1

i=1Xi_2k(k 1)2(k 1)Xkk1

i=1Xik(k 1)X2kk=W2k1 +_k1

i=1Xi_2k(k 1)2(k 1)Xkk1

i=1Xik(k 1)+(k 1)X2kk=W2k1 +(k 1) X2k1k2(k 1)XkXk1k+(k 1)X2kk,Ferreira,D.F. EstatsticaComputacional5.2AlgoritmosUnivariados 87resultandoemW2k= W2k1 + (k 1)_Xk Xk1_2/k.Podemos generalizar essa expressao para computarmos a covariancia S(x,y)entreumavariavelXeoutraY . Aexpressaoparaasomadeprodutos edadapor:W2k,(x,y)=W2k1,(x,y) + (k 1)_Xk Xk1_ _Yk Yk1_/k (5.2.6)para2 k n, sendoW21,(x,y)=0. Oestimador dacovarianciaeobtidoporS(x,y)= W2n,(x,y)/(n 1).Podemos observar, analisandotodas estas expressoes, queparaefetuarmos oscalculosdasomadequadrados edasomadeprodutoscorrigidanecessitamosdocalculo das medias das variaveis no k-esimo passo ou no passo anterior. A vantagemequeemuma unicapassagempelosdados,obtemostodasasestimativas. Podemosainda estender estes resultados para obtermos somas das terceira e quarta potenciasdosdesviosemrela caoamedia. Asexpressoesquederivamosparaissosao:W3k=W3k1 +(k2 3k + 2)(Xk Xk1)3k23(Xk Xk1)W2k1k(5.2.7a)W4k=W4k1 +(k3 4k2+ 6k 3)(Xk Xk1)4k3++6(Xk Xk1)2W2k1k24(Xk Xk1)W3k1k(5.2.7b)para2 k n,sendoW31= 0eW41= 0.Destaformapodemosimplementarafun caomedsqk() queretornaamedia, asoma de quadrado, cubo e quarta potencia dos desvios em rela cao a media e varianciaapartirdeumvetordedadosXdedimensaon.> # func~ao para retornar a media, somas de desvios em relac~ao a media> # ao quadrado, ao cubo e quarta pot^encia e vari^ancia> medsqk