У меня есть довольно большой CSV-файл (15 Гб), и мне нужно прочитать из него около 1 миллиона случайных строк. . Насколько я вижу и реализую, утилита CSV в Python позволяет выполнять только последовательную итерацию в файле.
Чтение всего файла в память для использования случайного выбора занимает очень много памяти, а просмотр всего файла и отбрасывание одних значений и выбор других занимает очень много времени, так что, существует ли возможность выбора случайных значений? строку из файла CSV и читать только эту строку?
Безуспешно пытался:
import csv
with open('linear_e_LAN2A_F_0_435keV.csv') as file:
reader = csv.reader(file)
print reader[someRandomInteger]
Образец CSV-файла:
331.093,329.735
251.188,249.994
374.468,373.782
295.643,295.159
83.9058,0
380.709,116.221
352.238,351.891
183.809,182.615
257.277,201.302
61.4598,40.7106