[R-br] [R_STAT] [Dúvida] Carregar dados sem ser na memória RAM

Benilton Carvalho beniltoncarvalho em gmail.com
Domingo Março 20 16:56:36 BRT 2011


Visto que um fator (no R) nao e' nada mais que um vetor de inteiros,
entao nao vejo pq o bigmemory seria sub-otimo nesse caso... a menos
que o numero de niveis do fator seja muito grande (no limite isso
seria um vetor de caracteres... e esses sao armazenados em RAM).

Outra alternativa, igualmente limitada no aspecto de caracteres, e' o
pacote 'ff'.

E a terceira e' usar um banco de dados de verdade.... SQLite, SQL,
etc... e fazer um fetch apenas da porcao relevante para o passo em
questao..

b

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


Mais detalhes sobre a lista de discussão R-br