Estou usando arquivos de texto para armazenar meus dados para o R sem problemas há algum tempo. Porém, para um projeto recente, os tamanhos dos arquivos estão ficando grandes demais para serem manipulados pelos arquivos de texto bruto. Qual é a melhor alternativa simples?
12
R
). A preocupação fundamental é com a integridade dos dados e não com o tamanho do arquivo: propor alguma forma de compactação apenas obscurece isso em vez de resolvê-lo.read.table
ouread.csv
está falhando silenciosamente? Você tem certeza absoluta de que não possui vários arquivos por aí e algum erro de codificação (caminho errado, nome de arquivo errado etc.)? Apenas para corrigir idéias, você também pode nos dar uma idéia de quantas variáveis e quantos registros você está lidando aproximadamente.Respostas:
A abordagem R padrão é usar
save
eload
. Se você executar osave
seu quadro de dados após importá-lo e anotá-lo, poderá especificarcompress=TRUE
e ficará surpreso com a compactação e oload
tempo rápido . Isso funciona especialmente bem se o tamanho do objeto for menor que cerca de 400 MB. Caso contrário, confira algumas das sugestões acima, ou o poderosoff
pacote em R.A
Hmisc
embalagem possui pequenos invólucrosSave
eLoad
torna o que foi exposto ainda mais simples:fonte
Dê uma olhada nos bancos de dados SQLite3. Cada banco de dados é um arquivo, portanto, não é necessário configurar um servidor de banco de dados.
Para criar um banco de dados:
Para uso com R, https://gist.github.com/lynaghk/1062939
fonte
Há várias opções genéricas.
Uma ótima compactação depende dos dados.
Meu palpite (e você não especificou, então devo adivinhar) é que você deseja armazenar dados semelhantes a planilhas em algo diferente de csv (delimitado por vírgulas).
Um dos meus formatos favoritos (eu amo o MatLab) é o hdf.
Aqui estão informações relacionadas ao R sobre o HDF:
É um formato de armazenamento de dados de supercomputação de alta densidade. Pode ser muito rápido e eficiente. Também é (sem surpresa) mais denso que o texto compactado.
fonte
Agora, as funções padrão de leitura de arquivos no R leem automaticamente os arquivos compactados com gz. Portanto, basta executar a compactação gzip simples nos seus dados e ler como sempre, como se fosse texto simples.
fonte