
Caros, DBC é um DBF comprimido. Assim, (sempre) sairá um .dbf de um .dbc. A sugestão de usar .RData (formato de dados do R) é útil apenas no caso de precisar carregar os mesmos dados mais de uma vez no ambiente R. Isto porque o caminho para sair de um .dbc até um .RData envolve descomprimir o .dbc, ler o .dbf em R e salvar para .RData. Não vejo saída ao processo de descomprimir .dbc e ler .dbf. Usar .RData é vantajoso para economizar tempo e espaço em disco. Exemplo: 202143 internações hospitalares em SP (estado) em Outubro (disponível em ftp://ftp.datasus.gov.br/dissemin/publicos/SIHSUS/200801_/Dados/) Ao final disponibilizo o script utilizado. Atividade segundos -------------------------------------- download do arquivo 47.11 extrair .dbf do .dbc 2.29 ler o arquivo .dbf em R 6.57 salvar .RData (default) 2.35 salvar .Rdata (compress='xz') 19.00 ler .RData (compress default) 0.51 ler .RData (compress xz) 0.74 -------------------------------------- Os tamanhos em disco dos quatro arquivos em questão são .dbc 15.0 Mb .dbf 136.0 Mb .RData (default) 7.5 Mb .RData (xz) 4.6 Mb Creio que esses números podem ajudar a decidir a melhor opção. Elias PS.: script utilizado para o exemplo: a <- paste('ftp://ftp.datasus.gov.br/', 'dissemin/publicos/SIHSUS/', '200801_/Dados/', sep='') b <- 'RDSP1509.dbc' system.time(download.file(paste(a,b,sep=''), b)) system.time(system(paste( 'wine ../TabWin/dbf2dbc.exe', b))) system.time(d <- foreign:::read.dbf(gsub('dbc','dbf',b))) dim(d) system.time(save(d, file=gsub('.dbc','d.RData',b))) system.time(save(d, file=gsub('.dbc','c.RData',b), compress='xz')) system(paste('ls -lh ', substr(b,1,8), "*", sep='')) system.time(load(gsub('.dbc','d.RData',b))) system.time(load(gsub('.dbc','c.RData',b)))