Я уже некоторое время использую текстовые файлы для хранения своих данных для R без каких-либо проблем. Но для недавнего проекта размеры файлов становятся слишком большими для необработанных текстовых файлов. Какова лучшая простая альтернатива?
12
R
). Основная проблема связана с целостностью данных, а не с размером файла: предложение какой-либо формы сжатия просто затеняет это, а не решает.read.table
илиread.csv
молча терпите неудачу? Вы абсолютно уверены, что у вас нет нескольких файлов и ошибки кодирования (неправильный путь, неправильное имя файла и т. Д.)? Просто чтобы исправить идеи, вы также можете дать нам представление о том, сколько переменных и с какими записями вы приблизительно имеете дело.Ответы:
Стандартный подход R заключается в использовании
save
иload
. Если вы запускаетеsave
фрейм данных после его импорта и аннотирования, вы можете указать,compress=TRUE
и вы будете поражены сжатием и быстрымload
временем. Это особенно хорошо работает, если размер объекта составляет менее 400 МБ. В противном случае ознакомьтесь с некоторыми из приведенных выше предложений или мощнымff
пакетом в R.В
Hmisc
упаковке есть маленькие обертки,Save
и,Load
чтобы сделать вышесказанное еще более безболезненным:источник
Взгляните на базы данных SQLite3. Каждая база данных является файлом, поэтому она не требует настройки сервера базы данных.
Чтобы создать базу данных:
Для использования с R, https://gist.github.com/lynaghk/1062939
источник
Есть несколько общих вариантов.
Большое сжатие зависит от данных.
Я предполагаю (и вы не указали, поэтому я должен догадаться), что вы хотите хранить данные в виде электронных таблиц в чем-то отличном от CSV (с разделителями-запятыми).
Один из моих любимых форматов (я люблю MatLab) - hdf.
Вот связанная с R информация о HDF:
Это суперкомпьютерный формат хранения данных высокой плотности. Это может быть очень быстро и эффективно. Это также (неудивительно) более плотный, чем заархивированный текст.
источник
Стандартные функции чтения файлов в R теперь будут автоматически легко читать сжатые файлы. Итак, просто запустите gzip-сжатие для ваших данных и читайте как всегда, как если бы это был простой текст.
источник