[R-br] RES: Importar Microdados - arquivos .txt sem separação entre as colunas

Roberto Pinho robertodepinho em gmail.com
Terça Janeiro 31 12:03:39 BRST 2012


Contribuindo:

Para usar a função read.fwf em um cenário em que se quer poucas colunas de
arquivos muitos "largos"  (ex. microdados INEP), as opções widths e
buffersize podem ser muito úteis.

Vc pode passar em widths os números das colunas que vc não deseja em
negativo. Buffersize vai determinar o numero de linhas a processar por vez.
No meu problema eu tinha pouca memória e desejva poucas colunas, assim,
acada 10 linhas lidas (buffersize=10, o R guardava na memória apenas as
colunas desejadas.




2012/1/28 Leandro Marino <leandro em cesgranrio.org.br>

> Roney,****
>
> ** **
>
> Para importar qualquer tipo de dados fixo, pode-se utilizar a função
> read.fwf do pacote gdata.****
>
> ** **
>
> Entretanto, certa vez o Prof. Djalma ao trabalhar com os dados da PNAD
> utilizava, salvo engano, a função scan() e o substr() para separar os
> dados. Parecia ser mais rápida, ainda não tive tempo para verificar. Na
> função read.fwf tem um parâmetro de buffer que dependendo do seu computador
> pode ser interessante aumentar para ganhar tempo.****
>
> ** **
>
> Um abraço,****
>
> Leandro****
>
> ** **
>
> *De:* r-br-bounces em listas.c3sl.ufpr.br [mailto:
> r-br-bounces em listas.c3sl.ufpr.br] *Em nome de *Roney Fraga
> *Enviada em:* sexta-feira, 27 de janeiro de 2012 19:50
> *Para:* R-br
> *Assunto:* [R-br] Importar Microdados - arquivos .txt sem separação entre
> as colunas****
>
> ** **
>
> Caros,****
>
> Diante da necessidade de importar microdados, principalmente do IBGE, por
> meio do pacote IBGEPesq()* *que vem apresentando alguns problemas,
> pergunto se algum usuário tem alguma sugestão para importar microdados
> alternativa ao pacote IBGEPesq().****
>
> Microdados consiste geralmente em grandes pesquisas que são
> disponibilizadas em arquivos .txt apenas com números sem nenhuma separação
> entre as colunas, sendo o arquivo dicionário disponibilizado a parte em
> outro arquivo .txt, nesse arquivo dicionário consta em que coluna começa e
> termina cada variável. No link
> http://www.datafilehost.com/download-2565fe79.html segue exemplo do
> arquivo .txt com os dados da PNAD 2009 banco domicílios. E no link
> http://www.datafilehost.com/download-fe9c31a8.html segue exemplos de
> dicionários para o SAS, disponibilizado pelo IBGE, e para o Stata que fiz
> com base no dicionário anterior. Se necessário o mesmo dicionário pode ser
> encontrado no R através dos comandos****
>
> install.packages('dicionariosIBGE')****
>
> library(dicionariosIBGE)
> data(dicPNAD2009)
> dicdom2009****
>
> No Stata uma vez que tenha o dicionário, na extensão .dct, e o arquivo
> .txt com os dados a serem lidos basta executar o comando ****
>
> infile using “/Caminho/Arquivo/dicionario.dct”
> no R não sei se é possível seguir o mesmo raciocínio para importar dados
> em arquivos .txt, caso algum usuário possa contribuir será uma grande
> ajuda. ****
>
> Os arquivos em .txt geralmente são grandes, por exemplo, a PNAD 2009
> arquivo pessoas tem 320MB. Uma vez ultrapassada a dificuldade de importar
> os dados, será mais fácil utilizar o R para trabalhar com os dados públicos
> das seguintes pesquisas:****
>
> PNAD, POF, PME, Enade, Censo Escolar, Censo da Educação Superior, Censo
> dos Profissionais do Magistério, Saeb, Enem, Provão, PNERA, Prova Brasil,
> Pesquisa de Ações Discriminatórias no Âmbito Escolar, etc... ****
>
> Atenciosamente****
>
> Roney ****
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
> código mínimo reproduzível.
>



-- 
Roberto Pinho
robertodepinho em gmail.com
msn: robertopinho em yahoo.com.br
Skype: roberto.pinho
http://www.ascoisas.com
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20120131/0fc1f2df/attachment.html>


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