Você precisa mesmo de manter seus dados fora da RAM? Não é fácil estourar a memória RAM com dados de PNAD, embora eu nunca tenha tentado usar todos dados do Censo de uma só vez. Além disso, você frequentemente pode restringir-se apenas a um subconjunto de variáveis, o que facilita em muito a leitura dos dados e sua alocação na RAM.
Se o motivo de você achar isso é o read.fwf travar, tente importar os dados com alguma alternativa antes de concluir isso. Uma opção é usar a função do pacote readr, e outra é converter para csv usando o fwf2csv do pacote descr e então importar com o fread do pacote data.table.
Talvez a dificuldade maior seja com funções pouco otimizadas. Quando alguém se dá ao trabalho de escrever algo em C ou C++, o resultado costuma ser mais escalável do que código escrito. Além disso, é necessário tomar cuidado com laços
for ou
apply (que é um
for disfarçado). Também sugiro considerar com carinho o uso de
data.table em vez de data.frame (outra alternativa parece ser o
tibble, mas não testei).
Espero ter ajudado.
Em Seg 11 jul. 2016, às 12:24, Edimeire Alexandra Pinto via R-br escreveu:
OI Gente.
Eu descobri que para grandes conjuntos de dados, tipo Censo, Pnad, etc, existe o pacote ffbase, dplyr, sendo que para usar modelos lineares generalizados, podemos usar o pacote. biglm.
No entanto, preciso usar técnicas multivariadas, tipo Análise Fatorial e Discriminante. Alguém sabe qual posso usar quando trabalhamos com dados que "explodem" a memória do R?
Agradeço a todos.
_______________________________________________
R-br mailing list