декартово произведение массивов в сумерках - PullRequest
0 голосов
/ 25 октября 2018

Я хотел бы создать декартово произведение из нескольких массивов.Например, в Pandas:

a1 = np.arange(0,30.)
a2 = np.arange(0,30.)
a3 = np.arange(0,30.)
a4 = np.arange(0,30.)
a5 = np.arange(0,30.)

df = pd.MultiIndex.from_product([a1,a2,a3,a4,a5]).to_frame(index=False)

Если я добавлю еще один массив (a6), то у меня начнется нехватка памяти.Таким образом, я хотел бы сделать это в Dask:

p = itertools.product(*(a1,a2,a3,a4,a5))
da = dd.from_array(np.array(list(p)), chunksize=50000, columns=[0,1,2,3,4])

Тем не менее, вышеприведенное все еще использует большой объем памяти из-за преобразования итерируемого в список, а затем в массив Numpy.Должен быть лучший способ сделать это.

...