Допустим, я хочу сгенерировать декартово произведение диапазона, то есть:
from itertools import product
var_range = range(-10000, 10000)
vars = list(product(var_range, repeat=2))
var[:10]
Таким образом, результат будет выглядеть так:Сбои ОЗУ и мой IPython (12 ГБ ОЗУ).
Я думал о разделении диапазонов на пакеты и использую его в итерациях цикла четверок:
[- 10000, -5000],[-4999,0], [1,5000], [5001,10000]
Затем, после каждой итерации, я мог сохранить его как кадр данных pandas в файл h5 и затем добавить к предыдущему результату итерации..
Я также читал о генераторах в python.
- Если так, то КАК в этом случае генераторы могут принести оптимизацию?
- Какой самый оптимистичный способ оптимизировать такой простой случай?