[R-br] leitura dados PNAD 2003 - variáveis V1701 a V1377

Marcos Silva marcosfs2006 em gmail.com
Terça Março 24 12:14:31 BRT 2015


Olá Luciane,

A idéia da função selectvar() é permitir ao usuário selecionar as variáveis
com base na descrição das mesmas. No seu caso, vi que diversas variáveis
não possuem uma descrição, o que torna o uso desta função um pouco sem
sentido.

Uma abordagem pode ser a seguinte:

# Definir o diretóro de trabalho
setwd("C:\\Users\\Marcos\\Documents\\PNAD")

# Importar funções auxiliares
source("getdic.R")

# Obter o dicionário
dic <- getdic("INPUT PES2003.TXT")

# Excluir a variável UF
dic <- subset(dic, cod != "UF")

#  Variáveis a serem importadas V1701 e V1377
variaveis_interesse  <- ifelse(dic$cod %in% c("V1701", "V1377"),
dic$tamanho, dic$tamanho * (-1))

# Importa os dados
dados <- read.fwf("PES2003.TXT", widths=variaveis_interesse,
comment.char="", strip.white=TRUE)

Acho que deve funcionar. Ainda não testei :)

Atualmente existem outras opções para a importação de microdados que podem
ser interessantes.

Dê uma olhada nos pactoes LaF e SAScii.

Boa Sorte!


Em 24 de março de 2015 09:52, Luciane Maria Pilotto <
lutipilotto em yahoo.com.br> escreveu:

> Bom dia,
>
> estou tentando ler as variáveis da PNAD de 2003 - V1701 a V1377-
> relacionadas ao suplemento Saúde- e as mesmas aparecem como NA. O banco
> está disponível no site do IBGE
> http://www.ibge.gov.br/home/estatistica/populacao/trabalhoerendimento/pnad2013/microdados.shtm
> .
>
> Também podem ser acessados no dropbox:
> https://www.dropbox.com/sh/d0z62bg4qqyg2x3/AAAVDYWjVlb4JpUTYlQfvq-Ka?dl=0.
>
> Estou usando os comandos abaixo:
>
> #----------------Ler microdados da PNAD 2003 (variáveis referente ao
> suplemento Saúde) utilizando a função read.fwf.r ----------------------#
>
> source(file.choose()) #carregar a função selectvar da pasta funcoes
> source(file.choose()) #carregar a função getdic da pasta funcoes
>
> # Gerar os dicionários de dados a partir dos  arquivos:  'input
> PES2003.txt'
> dicPNAD2003Pes <- getdic(file.choose())# abrir o arquivo input
> PES2003.txt, dentro da Pasta Input
>
> head(dicPNAD2003Pes)
> str(dicPNAD2003Pes)
> nrow(dicPNAD2003Pes)
> dim(dicPNAD2003Pes)
>
> # Para EXCLUSÃO do "UF" (que apresenta erro na importação por começar na
> mesma posição que número de controle):
>
> dicPNAD2003Pes <- subset(dicPNAD2003Pes, cod !="UF")
> head(dicPNAD2003Pes)
> dim(dicPNAD2003Pes)
>
> ####Usar estes comandos para importar *apenas algumas variáveis* da base
> de dados das PESSOAS
>
> variaveis <- selectvar(dicPNAD2003Pes) # Com a tecla CTRL pressionada,
> selecione as variáveis de interesse, neste caso são as que aparecem como NA:
> Erro em substring(x, first, last) : invalid substring arguments
>
> ### PROBLEMA: Ao abrir a janela das variáveis utilizando o comando acima,
> as variáveis de interesse referentes a saúde aparecem como NA,
> diferentemente das demais variáveis que aparecem no banco. No dicionário as
> mesmas aparecerem corretamente.
>
> Atenciosamente,
>
> __________________________________________________
> Luciane Maria Pilotto
>
>
> _______________________________________________
> 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.
>



-- 
Marcos F. Silva
http://sites.google.com/site/marcosfs2006
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20150324/5a670ac0/attachment.html>


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