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

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@listas.c3sl.ufpr.br [mailto:r-br-bounces@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

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@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@listas.c3sl.ufpr.br [mailto: r-br-bounces@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@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@gmail.com msn: robertopinho@yahoo.com.br Skype: roberto.pinho http://www.ascoisas.com

Roney, Dê uma olhada neste exemplo: http://leg.ufpr.br/~elias/ensino/ce223/rcesup.R Elias T. Krainski
________________________________ De: Roney Fraga <roneyfraga@gmail.com> Para: R-br <r-br@listas.c3sl.ufpr.br> Enviadas: Sexta-feira, 27 de Janeiro de 2012 19:50 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... AtenciosamenteRoney _______________________________________________ R-br mailing list R-br@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.

No e-mail anterior indiquei exemplo para microdados do INEP. Veja este exemplo para PNAD 2006. Elias T. Krainski
________________________________ De: Roney Fraga <roneyfraga@gmail.com> Para: R-br <r-br@listas.c3sl.ufpr.br> Enviadas: Sexta-feira, 27 de Janeiro de 2012 19:50 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... AtenciosamenteRoney _______________________________________________ R-br mailing list R-br@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.

Só um adendo: tenho a impressão de que Elias acabou esquecendo de colocar este link na mensagem dele: http://leg.ufpr.br/~elias/ensino/ce223/aula18.R Vi que Roney já resolveu o problema, mas fica aí o link para referência. .: *Enoch Filho* :. PS: entrei no grupo faz poucos dias. Ainda estou começando a engatinhar no R. ------------------ Em 28 de janeiro de 2012 10:43, Elias T. Krainski escreveu: No e-mail anterior indiquei exemplo para microdados do INEP. Veja este
exemplo para PNAD 2006.
Elias T. Krainski
------------------------------ *De:* Roney Fraga *Para:* R-br *Enviadas:* Sexta-feira, 27 de Janeiro de 2012 19:50 *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().(...)

read.fwf []s Leonard de Assis assis <dot> leonard <at> gmail <dot> com Em 27/01/2012 19:50, Roney Fraga escreveu:
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@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.
participantes (6)
-
Elias T. Krainski
-
Enoch Filho
-
Leandro Marino
-
Leonard de Assis
-
Roberto Pinho
-
Roney Fraga