Эффективное хранение и чтение больших файлов данных

Я работаю над проектом, в котором у меня есть большие входные файлы, полученные из численных решений pdes. Формат данных следующий.

x \t y \t f(x,y)

Для каждого значения y у нас есть несколько значений x и значение функции, оцениваемое в каждой точке. Размер данных, с которыми я имею дело, составляет около [-3, 5]x[-3, 5]с шагом 0.01в каждом измерении, поэтому файл необработанных данных довольно большой (примерно 640,000записей ). Чтение его в память также занимает довольно много времени -, потому что инструменты, над которыми я работаю, должны одновременно читать несколько файлов необработанных данных этого типа.

Я использую Python.

Есть ли способ эффективно хранить и читать такие данные в Python? Идея состоит в том, чтобы включить инструмент, который преобразует эти необработанные файлы данных во что-то более эффективное для чтения. В настоящее время я работаю над интерполяцией данных и сохранением некоторых коэффициентов (, по сути, заменяя память вычислительным временем ), но я уверен, что должен быть более простой способ, который помогает и памяти, и времени.

Спасибо SOCommunity!

PS :Я видел похожие вопросы по Java. Я работаю полностью на Python здесь.

5
задан Community 22 September 2017 в 17:44
поделиться