<html><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:12pt"><div><span>É verdade Elias. Por outro lado são muitos níveis para um fator, você não acha?</span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal; "><span><br></span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal; ">Talvez uma revisão nos dados melhorasse na execução da rotina.</div><div></div><div>[ ]'s </div><div>Edson Lira<br>Estatístico<br>Manaus-Amazonas</div><div class="yahoo_quoted" style="display: block; "> <br> <br> <div style="font-family: HelveticaNeue, 'Helvetica
Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 12pt; "> <div style="font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 12pt; "> <div dir="ltr"> <font size="2" face="Arial"> Em Quarta-feira, 23 de Outubro de 2013 9:08, Elias T Krainski <eliaskrainski@yahoo.com.br> escreveu:<br> </font> </div> <div class="y_msg_container">isso so' ajuda na leitura (mais rapido por exemplo). mas o conjunto de <br clear="none">dados nao e' tao grande e o problema e' outro: anova.<br clear="none"><br clear="none">On 10/23/2013 03:02 PM, Edson Lira wrote:<br clear="none">> Tem um pacote chamado ff que executa a leitura de arquivos grandes.<br clear="none">><br clear="none">> Transforme seus dados para um arquivo .csv (caso não seja) e tente a<br clear="none">> leitura com este pacote.<br clear="none">><br clear="none">> [ ]'s.<br clear="none">> Edson Lira<br
clear="none">> Estatístico<br clear="none">> Manaus-Amazonas<br clear="none">><br clear="none">><br clear="none">> Em Quarta-feira, 23 de Outubro de 2013 5:35, Elias T Krainski<br clear="none">> <<a shape="rect" ymailto="mailto:eliaskrainski@yahoo.com.br" href="mailto:eliaskrainski@yahoo.com.br">eliaskrainski@yahoo.com.br</a>> escreveu:<br clear="none">> Oi Luiz,<br clear="none">><br clear="none">> O problema e' que vc tem 1000 niveis em cada um de dois fatores. Como a<br clear="none">> funcao aov() usa a funcao lm(), esta monta a matriz de delineamento, ne<br clear="none">> neste caso tem dimensao de um milhao por 1999. Para armazenar essa<br clear="none">> matriz vc precisa de 14.9Gb<br clear="none">><br clear="none">> print(object.size(double(1999))*1e6, unit='Gb')<br clear="none">><br clear="none">> Se seu computador tivesse 16Gb de memoria vc conseguiria fazer<br clear="none">> calculando as
estatistica suficientes X'X e X'y. Foi o que eu fiz e<br clear="none">> enviei X'X e X'y no seu e-mail. Mas isso ainda nao 'e a melhor solucao<br clear="none">> nesse caso particular.<br clear="none">><br clear="none">> Como vc nao tem fator continuo, e' muito barato computacionalmente fazer<br clear="none">> o quadro de anova calculando as expressoes de soma de quadrados.<br clear="none">> Dessa forma vc consegue montar um quadro de anova facilmente num<br clear="none">> computador com pouca memoria. Note que seu dado consiste em apenas dois<br clear="none">> fatores e uma resposta continua, cada um com 1 milhao de registros. Isso<br clear="none">> ocupa apenas 19.2Mb em memoria<br clear="none">><br clear="none">> print(object.size(Data), un='Mb')<br clear="none">><br clear="none">> Veja como montar o quadro de anova:<br clear="none">><br clear="none">> attach(Data)<br clear="none">> n <- length(y)<br
clear="none">> ntr <- c(length(levels(block)), length(levels(Treat)))<br clear="none">> gltot <- n-1<br clear="none">> gltra <- ntr - 1<br clear="none">> glres <- n - sum(ntr)<br clear="none">><br clear="none">> correcao <- (sum(y)^2)/n<br clear="none">> sqtot <- sum(y^2)-correcao<br clear="none">> bltot <- tapply(y, block, sum)<br clear="none">> trtot <- tapply(y, Treat, sum)<br clear="none">><br clear="none">> sqbl <- sum(bltot^2)/ntr[2] - correcao<br clear="none">> sqtr <- sum(trtot^2)/ntr[1] - correcao<br clear="none">> sqres <- sqtot - sqbl - sqtr<br clear="none">><br clear="none">> qmbl <- sqbl/gltra[1]<br clear="none">> qmtr <- sqtr/gltra[2]<br clear="none">> qmres <- sqres/glres<br clear="none">><br clear="none">> fval <- c(qmbl, qmtr)/qmres<br clear="none">> pval <- pf(fval, gltra, glres, lower.tail=FALSE)<br clear="none">><br
clear="none">> data.frame(gl=c(gltra, glres, gltot),<br clear="none">> sqt=c(sqbl, sqtr, sqres, sqtot),<br clear="none">> qm=c(qmbl, qmtr, qmres, NA),<br clear="none">> fval=c(fval, NA, NA),<br clear="none">> pval=c(pval, NA, NA))<br clear="none">><br clear="none">><br clear="none">> On 10/22/2013 08:13 PM, Luiz Roberto Martins Pinto wrote:<br clear="none">> > Caros companheiros da R-BR.<br clear="none">> ><br clear="none">> > Não consigo fazer uma ANOVA com arquivo com 1e+06 registros.<br clear="none">> > Então... preciso de ajuda!!!<br clear="none">> ><br clear="none">> > Dados:<br clear="none">> ><br clear="none">> > <a shape="rect" href="http://www1.datafilehost.com/d/c0d31775"
target="_blank">http://www1.datafilehost.com/d/c0d31775</a><br clear="none">> ><br clear="none">> > Meu pc<br clear="none">> > R for windows 2.15.1(x64)<br clear="none">> > 8 Gb de Memo<br clear="none">> ><br clear="none">> > load('RCBD_Data.Rdata') # Arquivo com 1e+06 registros<br clear="none">> ><br clear="none">> > m=aov(y~Treat+block,data=Data)<br clear="none">> > summary(m)<br clear="none">> ><br clear="none">> > Mensagem de erro:<br clear="none">> ><br clear="none">> > Erro: não é possível alocar vetor de tamanho 14.9 Gb<br clear="none">> > Além disso: Mensagens de aviso perdidas:<br clear="none">> > 1: In model.matrix.default(mt, mf, contrasts) :<br clear="none">> > Reached total allocation of 8086Mb: see help(memory.size)<br
clear="none">> > 2: In model.matrix.default(mt, mf, contrasts) :<br clear="none">> > Reached total allocation of 8086Mb: see help(memory.size)<br clear="none">> > 3: In model.matrix.default(mt, mf, contrasts) :<br clear="none">> > Reached total allocation of 8086Mb: see help(memory.size)<br clear="none">> > 4: In model.matrix.default(mt, mf, contrasts) :<br clear="none">> > Reached total allocation of 8086Mb: see help(memory.size)<br clear="none">> ><br clear="none">> ><br clear="none">> > Luiz Roberto Martins Pinto<br clear="none">> > Prof. Pleno/DCET/UESC<br clear="none">> > Laboratório de Estatística Computacional<br clear="none">> > Universidade Estadual de Santa Cruz<br clear="none">> > Ilhéus-Bahia<br clear="none">> ><br
clear="none">> > <a shape="rect" ymailto="mailto:luizroberto.uesc@gmail.com" href="mailto:luizroberto.uesc@gmail.com">luizroberto.uesc@gmail.com</a> <mailto:<a shape="rect" ymailto="mailto:luizroberto.uesc@gmail.com" href="mailto:luizroberto.uesc@gmail.com">luizroberto.uesc@gmail.com</a>><br clear="none">> <mailto:<a shape="rect" ymailto="mailto:luizroberto.uesc@gmail.com" href="mailto:luizroberto.uesc@gmail.com">luizroberto.uesc@gmail.com</a> <mailto:<a shape="rect" ymailto="mailto:luizroberto.uesc@gmail.com" href="mailto:luizroberto.uesc@gmail.com">luizroberto.uesc@gmail.com</a>>><br clear="none">> > skype: lrmpinto<br clear="none">> > <a shape="rect" href="http://lattes.cnpq.br/2732314327604831" target="_blank">http://lattes.cnpq.br/2732314327604831</a><br clear="none">> ><br clear="none">> ><br clear="none">> ><br clear="none">> ><br
clear="none">> > _______________________________________________<br clear="none">> > R-br mailing list<br clear="none">> > <a shape="rect" ymailto="mailto:R-br@listas.c3sl.ufpr.br" href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a> <mailto:<a shape="rect" ymailto="mailto:R-br@listas.c3sl.ufpr.br" href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a>><br clear="none">> > <a shape="rect" 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 clear="none">> > Leia o guia de postagem (<a shape="rect" href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça<br clear="none">> código mínimo reproduzível.<br clear="none">><br clear="none">> ><br clear="none">>
_______________________________________________<br clear="none">> R-br mailing list<br clear="none">> <a shape="rect" ymailto="mailto:R-br@listas.c3sl.ufpr.br" href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a> <mailto:<a shape="rect" ymailto="mailto:R-br@listas.c3sl.ufpr.br" href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a>><div class="yqt9761473772" id="yqtfd75134"><br clear="none">> <a shape="rect" 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 clear="none">> Leia o guia de postagem (<a shape="rect" href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça<br clear="none">> código mínimo reproduzível.<br clear="none">><br clear="none">><br clear="none">><br clear="none">><br clear="none">>
_______________________________________________<br clear="none">> R-br mailing list<br clear="none">> <a shape="rect" ymailto="mailto:R-br@listas.c3sl.ufpr.br" href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br clear="none">> <a shape="rect" 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 clear="none">> Leia o guia de postagem (<a shape="rect" 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 clear="none">><br clear="none">_______________________________________________<br clear="none">R-br mailing list<br clear="none"><a shape="rect" ymailto="mailto:R-br@listas.c3sl.ufpr.br" href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br clear="none"><a shape="rect" 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 clear="none">Leia o guia de postagem (<a shape="rect" 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.</div><br><br></div> </div> </div> </div> </div></body></html>