[R-br] Bando de dado .txt
Andre Oliveira
andreolsouza em yahoo.com.br
Domingo Outubro 2 18:06:55 BRT 2016
Oi Rodrigo!obrigado pela gentileza. Qual sua suspeito para este erro?
rm(list=ls(all=TRUE))options("scipen" = 8)
setwd("/media/andre/319625F7676EB6AA/Arquivos/Pendrive/KINGSTON/IFES/IFES_2014_02/Projetos/R/abrir bancos de dados grandes /microdados_enem2011/DADOS")
dir()
[1] "DADOS_ENEM_2011.TXT" "INPUT_SAS_ENEM_2011.sas"
[3] "ITENS_PROVA_2011.TXT" "QUESTIONARIO_SOCIO_ECONOMICO_ENEM_2011.TXT"
library(SAScii)
library(data.table)
library(readr)
estrutura <- parse.SAScii("INPUT_SAS_ENEM_2011.sas", beginline = 1 , lrecl = NULL )
Error in toupper(SASinput) : string multibyte inválida 13 André Oliveira Souza. Graduação em Matemática, mestrado em estatística aplicada.Instituto Federal de Educação, Ciência e Tecnologia do Espirito Santo. IFES
Em Domingo, 2 de Outubro de 2016 17:22, Rodrigo Coster via R-br <r-br em listas.c3sl.ufpr.br> escreveu:
André,
Com o pacote SAScii é fácil transformar uma sintaxe de leitura SAS em um read.fwf (ou read_fwf do pacote readr). Segue o comando para ler com o readr e transformar em data.table por referência em seguida. O comando de leitura demora (depois de 5 minutos eu cansei e fui fazer outras coisas, então não sei o tempo total) e só funciona em sistemas 64bits. Se tu quiser, pode ficar apertando ctrl+l para atualizar a barra de progresso.
library(SAScii)
library(data.table)
library(readr)
setwd('C:/Coisas/ENEM2011')
estrutura <- parse.SAScii('INPUTS/SAS/INPUT_SAS_ENEM_2011.sas', beginline = 1 , lrecl = NULL )
estrutura # Apenas para ver o conteúdo da variável
dados <- read_fwf('DADOS/DADOS_ENEM_2011.TXT', fwf_widths(estrutura$width, col_names = estrutura$varname), col_types = paste(ifelse(estrutura$char, 'c', 'n'), collapse = ''))
setDT(dados) # Transforma um data.frame em data.table por referência
dados
dados[, mean(NU_NT_MT, na.rm = TRUE), keyby = UF_INSC]
E eu devo ter o arquivo read.SAScii.sqlite.R, posso te enviar tb.
[]'s
2016-10-02 14:09 GMT-03:00 Andre Oliveira via R-br <r-br em listas.c3sl.ufpr.br>:
A função read.SAScii.sqlite.R não está disponível mais!
André Oliveira Souza. Graduação em Matemática, mestrado em estatística aplicada.Instituto Federal de Educação, Ciência e Tecnologia do Espirito Santo. IFES
Em Domingo, 2 de Outubro de 2016 9:04, Andre Oliveira via R-br <r-br em listas.c3sl.ufpr.br> escreveu:
Oi Marcos,obrigado pelas sugestões. Eu estava indo muito bem com a data.table, tentei library(ff) e library(ffbase), mas sem sucesso.
André Oliveira Souza. Graduação em Matemática, mestrado em estatística aplicada.Instituto Federal de Educação, Ciência e Tecnologia do Espirito Santo. IFES
Em Domingo, 2 de Outubro de 2016 9:00, Marcos Silva <marcosfs2006 em gmail.com> escreveu:
Dá uma olhada nesse post:
http://rcoster.blogspot.com. br/2014/02/lendo-grandes- bancos-de-dados.html
Em 2 de outubro de 2016 08:36, Marcos Silva <marcosfs2006 em gmail.com> escreveu:
André,
Este tipo de arquivo não tem um caractere delimitador, tal como virgula, ponto e virgula, pipe ("|"), Você não vai conseguir importar com read.table() e derivações (read.csv(), read.csv2()) ou mesmo com fread().
Mas para vc "ler" esse arquivo, vc precisa saber qual o comprimento de cada variável (quantidade de caracteres que ocupa no arquivo), informação essa que deveria estar no dicionário de variáveis.
Este tipo de arquivo vc importa com read.fwf() ou read_fwf() do pacote readr. Mas como essa base é muito grande, recomendo utilizar algum pacote, a exemplo do pacote LaF. Existem outras possibilidades talvez melhores.
Em 2 de outubro de 2016 03:13, Andre Oliveira <andreolsouza em yahoo.com.br> escreveu:
Oi Marcos,neste dicionário fala que é formato em formato ASCII. Não tem mais instruções pelo que percebi. Descreve os nomes da varáveis também! André Oliveira Souza. Graduação em Matemática, mestrado em estatística aplicada.Instituto Federal de Educação, Ciência e Tecnologia do Espirito Santo. IFES
Em Domingo, 2 de Outubro de 2016 0:13, Marcos Silva <marcosfs2006 em gmail.com> escreveu:
Acho que este e um arquivo de formato fixo. Vc vai precisar do dicionario de dados para importar. Normalmente este dicionario e disponibilizado com os dados pelo inep.
Em 01/10/2016 22:31, "Andre Oliveira via R-br" <r-br em listas.c3sl.ufpr.br> escreveu:
Boa noite,não estou conseguindo identificar o motivo de não abrir este arquivo .txt corretamente, ele tem em torno de 6.3 GBAlguém teria uma dica para compartilhar? Acredito que não estou trabalhando corretamente!
library(data.table)
readLines("DADOS_ENEM_2011. TXT", n = 1)
[1] "3000000000012011 2803548708SAO BERNARDO DO CAMPO SP110000000000000000000011 . . ...3548708SAO BERNARDO DO CAMPO SP1111 577.10 576.00 575.50 737. 10CEBDCACBEAABBAABAEBDCABDCDEA AADCBBEBADDBEBECDDEECABABEBDDE BAEADCACABCBBECADDAADBADDAABAB CAEEAEAEDDDAAEEBDECADCEABDDBAE CAAABDAEBCCACBAECBAEBECCAAEBAB ECECCDDAACDADADBACCBAADCAECCCE DD1241201251290CECDDACBCAEBEBB ACEEDCAEBDAEDADBEBBDDADCBCBACD DEECEBABAADDEBAECDCACEDCBBEBCD CAADBADDDBAEACAEEDBDBDDCAEDDDA CDEBBECAACDABADBAECCEADDCEBCBA CBAEEBAEEECCEEEBCBECEBADCBDBEA DCDBDCCCBADCAECCCCDDP 140.00 140.00 140.00 140.00 60.00 620.000 . . .
require(bit64)
enem2011<- fread("DADOS_ENEM_2011.TXT", nrow = 1, header = TRUE, sep=";")
head(enem2011)
3000000000012011 2803548708SAO BERNARDO DO CAMPO SP110000000000000000000011 . . ...3548708SAO BERNARDO DO CAMPO SP1111 577.10 576.00 575.50 737. 10CEBDCACBEAABBAABAEBDCABDCDEA AADCBBEBADDBEBECDDEECABABEBDDE BAEADCACABCBBECADDAADBADDAABAB CAEEAEAEDDDAAEEBDECADCEABDDBAE CAAABDAEBCCACBAECBAEBECCAAEBAB ECECCDDAACDADADBACCBAADCAECCCE DD1241201251290CECDDACBCAEBEBB ACEEDCAEBDAEDADBEBBDDADCBCBACD DEECEBABAADDEBAECDCACEDCBBEBCD CAADBADDDBAEACAEEDBDBDDCAEDDDA CDEBBECAACDABADBAECCEADDCEBCBA CBAEEBAEEECCEEEBCBECEBADCBDBEA DCDBDCCCBADCAECCCCDDP 140.00 140.00 140.00 140.00 60.00 620.000 . . . ...
1: 3000000000022011 2214125506SAO JOSE DOS PINHAIS PR110000000000000000000011 . . ...4125506SAO JOSE DOS PINHAIS PR0000 . . . . 1211171251290DCEACDBECBCAEBACB EAECEDEDAABDBEDBBDDDCABCBDCAED EBCEAEDBDAACACECDBBCACEDCDCBAE ADADBBDDEAABAEEDBDBDDCAEDDDACD EBBECAACDABADBAECCEADDCEBCBACB AEEBAEEECCEEEBCBECEBADCBDBEADC DBDCCCBADCAECCCCDDF 0.00 0.00 0.00 0.00 0.00 0.000 . . . obrigado.
André Oliveira Souza. Graduação em Matemática, mestrado em estatística aplicada.Instituto Federal de Educação, Ciência e Tecnologia do Espirito Santo. IFES
______________________________ _________________
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
--
Marcos F. Silva
http://sites.google.com/site/ marcosfs2006
______________________________ _________________
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� c�igo m�imo reproduz�el.
______________________________ _________________
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.
_______________________________________________
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� c�igo m�imo reproduz�el.
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20161002/516ec0f4/attachment-0001.html>
Mais detalhes sobre a lista de discussão R-br