J'utilise des fichiers texte pour stocker mes données pour R sans aucun problème depuis un certain temps maintenant. Mais pour un projet récent, la taille des fichiers devient trop importante pour être gérée par les fichiers texte bruts. Quelle est la meilleure alternative simple?
12
R
). La préoccupation fondamentale concerne l'intégrité des données plutôt que la taille du fichier: proposer une forme de compression ne fait que masquer cela plutôt que de le résoudre.read.table
ouread.csv
échouez en silence? Êtes-vous absolument sûr de ne pas avoir plusieurs fichiers et une erreur de codage (mauvais chemin, mauvais nom de fichier, etc.)? Juste pour fixer des idées, vous pouvez également nous donner une idée du nombre de variables et du nombre d'enregistrements que vous traitez approximativement.Réponses:
L'approche R standard consiste à utiliser
save
etload
. Si vous exécutezsave
votre bloc de données après l'avoir importé et annoté, vous pouvez le spécifiercompress=TRUE
et vous serez étonné de la compression et duload
temps rapide . Cela fonctionne particulièrement bien si la taille de l'objet est inférieure à environ 400 Mo. Sinon, consultez certaines des suggestions ci-dessus, ou le puissantff
package de R.Le
Hmisc
paquet a de petits emballagesSave
etLoad
pour rendre ce qui précède encore plus indolore:la source
Jetez un œil aux bases de données SQLite3. Chaque base de données est un fichier, il ne nécessite donc pas la configuration d'un serveur de base de données.
Pour créer une base de données:
Pour une utilisation avec R, https://gist.github.com/lynaghk/1062939
la source
Il existe un certain nombre d'options génériques.
Une bonne compression dépend des données.
Ma supposition (et vous ne l'avez pas spécifié, je dois donc deviner) est que vous cherchez à stocker des données de type tableur dans autre chose que csv (délimité par des virgules).
Un de mes formats préférés (j'adore MatLab) est le hdf.
Voici les informations relatives à HDF concernant R:
Il s'agit d'un format de stockage de données de calcul intensif à haute densité. Cela peut être très rapide et efficace. Il est également (sans surprise) plus dense que le texte zippé.
la source
Les fonctions de lecture de fichiers standard dans R liront désormais facilement et facilement les fichiers compressés. Donc, exécutez simplement une compression gzip simple sur vos données et lisez comme toujours, comme s'il s'agissait de texte brut.
la source