<font color="#333333"><font size="2"><font face="trebuchet ms,sans-serif"><i>É verdade Benilton. <br><br>Posso ter entendido errado, mas certa vez assisti uma palestra do Jay Emmerson e ele informava que a melhor forma para trabalho no bigmemory era através de inteiros. Acredito que por não trabalhar com data.frame's e sim matrizes. Salvo engano, não há a possibilidade no R de armazenar fatores em matrizes, pelo que me lembro (posso estar muito enganado) ele automaticamente converte para character.<br>

<br>Um pequeno exemplo:<br> str( matrix(factor(1:4,labels=paste('teste',1:4)),ncol=2))<br> chr [1:2, 1:2] "teste 1" "teste 2" "teste 3" "teste 4"<br><br>Como tenho o hábito de trabalhar com data.frames não sei muito bem como é trabalhado no R estes outros formatos.<br>

<br>Tendo feito a leitura com o bigmemory existem uma série de outros pacotes relacionados que devem ser utlizados. bigalgebra, bigtabulate ...<br><br> A terceiro opção do Benilton, para mim, é muito boa. Agora tudo depende do uso que terá que se fazer dos dados. Eventualmente, algumas soluções podem exigir mais trabalhos que outras...<br>

<br>Um abraço,<br>Leandro<br><br><br clear="all"></i></font></font></font>Atenciosamente,<br>Leandro Marino<br><a href="http://www.leandromarino.com.br">http://www.leandromarino.com.br</a> (Fotógrafo)<br><a href="http://est.leandromarino.com.br/Blog">http://est.leandromarino.com.br/Blog</a> (Estatístico)<br>

Cel.: + 55 21 9845-7707<br>Cel.: + 55 21 8777-7907<br><br>
<br><br><div class="gmail_quote">Em 20 de março de 2011 16:56, Benilton Carvalho <span dir="ltr"><<a href="mailto:beniltoncarvalho@gmail.com">beniltoncarvalho@gmail.com</a>></span> escreveu:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

Visto que um fator (no R) nao e' nada mais que um vetor de inteiros,<br>
entao nao vejo pq o bigmemory seria sub-otimo nesse caso... a menos<br>
que o numero de niveis do fator seja muito grande (no limite isso<br>
seria um vetor de caracteres... e esses sao armazenados em RAM).<br>
<br>
Outra alternativa, igualmente limitada no aspecto de caracteres, e' o<br>
pacote 'ff'.<br>
<br>
E a terceira e' usar um banco de dados de verdade.... SQLite, SQL,<br>
etc... e fazer um fetch apenas da porcao relevante para o passo em<br>
questao..<br>
<br>
b<br>
<br>
2011/3/20 Leandro Marino <<a href="mailto:leandromarino@leandromarino.com.br">leandromarino@leandromarino.com.br</a>>:<br>
<div><div></div><div class="h5">> Fernando,<br>
><br>
> na realiade o SOAR pode até ajudar, mas nas realidade ele é um mecanismo de<br>
> fazer I/O, mas quando se está utilizando o conjunto de dados ele o carrega<br>
> para memória RAM.<br>
><br>
> Utilizo sempre o SOAR visto que tem um poder de compactação incrível de<br>
> dados no HD. Arquivos de 100mb apos lidos com o pacote, ficam apenas com<br>
> 10mb de espaço ocupado em HD. Ele também é ótimo para se trabalhar com uma<br>
> grande quantidade de conjuntos intermediários ao mesmo tempo. Mas<br>
> eventualemente é necessário salvá-los no HD e limpar a memória com gc().<br>
><br>
> Neste caso específico, se o banco de dados for de apenas números inteiros,<br>
> tais quais as bases de dados do IBGE, recomendo a utilização do BigMemory.<br>
> elo que sei, ele não trabalha de forma eficiente com variáveis do tipo fator<br>
> ou caracter.<br>
><br>
> De qualquer forma, para a importação, recomendo fortemente a exportação<br>
> desta base de dados em formato texto, fica muito mais fácil para se<br>
> trabalhar. Além de existir, opções bem eficientes para a leitura dos dados,<br>
> como a função read.lines (ótima para conjunto de dados grandes).<br>
><br>
> Atenciosamente,<br>
> Leandro Marino<br>
> <a href="http://www.leandromarino.com.br" target="_blank">http://www.leandromarino.com.br</a> (Fotógrafo)<br>
> <a href="http://est.leandromarino.com.br/Blog" target="_blank">http://est.leandromarino.com.br/Blog</a> (Estatístico)<br>
> Cel.: + 55 21 9845-7707<br>
> Cel.: + 55 21 8777-7907<br>
><br>
><br>
><br>
> Em 20 de março de 2011 11:24, Fernando Mayer <<a href="mailto:fernandomayer@gmail.com">fernandomayer@gmail.com</a>><br>
> escreveu:<br>
>><br>
>> O pacote SOAR pode resolver. De uma olhada no manual e na vignette em<br>
>><br>
>> <a href="http://cran-r.c3sl.ufpr.br/web/packages/SOAR/index.html" target="_blank">http://cran-r.c3sl.ufpr.br/web/packages/SOAR/index.html</a><br>
>><br>
>> []s,<br>
>><br>
>> ---<br>
>> Fernando Mayer<br>
>> URL: <a href="http://sites.google.com/site/fernandomayer" target="_blank">http://sites.google.com/site/fernandomayer</a><br>
>> e-mail: fernandomayer [@] <a href="http://gmail.com" target="_blank">gmail.com</a><br>
>><br>
>><br>
>><br>
>> 2011/3/20 pedrorafaelmarinho <<a href="mailto:pedrorafaelmarinho@yahoo.com.br">pedrorafaelmarinho@yahoo.com.br</a>>:<br>
>> > Pessoal estou com um problema ou talvez seja do R. Tenho que ler uma<br>
>> > base de dados de 600 mb em formato DBF (DBase). O R pelo que ando lendo ele<br>
>> > ler a base de dados e joga na memória RAM. Toda vez que carrego essa base de<br>
>> > dados o pc trava a ponto de o mouse não funcionar. Existe alguma forma de<br>
>> > fazer com que o R não carregue toda a base de dados diretamente na memória?<br>
>> > Por exemplo a base de dados ficar no HD e somente carregar algumas variáveis<br>
>> > a medida que vou precisando? Softwares simples como o Tabwin eu consigo<br>
>> > acessar a base de dados e o pc não trava...O que está acontecendo?<br>
>> > O comando que usei para carregar a base foi read.dbf() usando o pacote<br>
>> > foreign.<br>
>> ><br>
>> ><br>
>> ><br>
>> > ------------------------------------<br>
>> ><br>
>> > Links do Yahoo! Grupos<br>
>> ><br>
>> > <*> Para visitar o site do seu grupo na web, acesse:<br>
>> >    <a href="http://br.groups.yahoo.com/group/R_STAT/" target="_blank">http://br.groups.yahoo.com/group/R_STAT/</a><br>
>> ><br>
>> > <*> Para sair deste grupo, envie um e-mail para:<br>
>> >    <a href="mailto:R_STAT-unsubscribe@yahoogrupos.com.br">R_STAT-unsubscribe@yahoogrupos.com.br</a><br>
>> ><br>
>> > <*> O uso que você faz do Yahoo! Grupos está sujeito aos:<br>
>> >    <a href="http://br.yahoo.com/info/utos.html" target="_blank">http://br.yahoo.com/info/utos.html</a><br>
>> ><br>
>> ><br>
>> ><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>
><br>
><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>
><br>
><br>
</div></div></blockquote></div><br>