Как я могу объединить Dask DataFrame все части вместе - PullRequest
0 голосов
/ 27 мая 2018

У меня есть продажный DataFrame, который имеет 28M строк, а также некоторые другие кадры данных, а также пример Product DataFrame.

Когда я впервые преобразую кадры данных pandas в кадр данных Dask:

  sales_dd = dd.from_pandas(Sales, npartitions=3) #28M rows
  product_dd = dd.from_pandas(Product, npartitions=3) #600 rows

после преобразования Dask Dataframe я могу видеть свои данные с помощью;

  sales_dd.tail()

             Date      ProductNo    Total_Sales
28499962    20160730       537        3.0
28499963    20170528       561        12.0
28499964    20160628       534        10.0
28499965    20170112       544        160.0
28499966    20170907       574        0.0

и после того, как я пытаюсь объединить эти два блока данных DataFrame следующим образом:

productsales = dd.merge(sales_dd, product_dd, on='ProductNo', how='left')

затем, когда я проверяю последнийDataFrame;

productsales.tail()



               Date    ProductNo    Total_Sales   x     y     z  ....
9440495     20171202       579        5.0         .     .     .
9440496     20171017       581        2.0         .     .     .
9440497     20160906       519        9.0
9440498     20160628       544        10.0        .     .     .
9440499     20170907       574        0.0         .     .     .

Как мы видим, в таблице productsales всего 900k строк.

У меня вопрос, как объединить все DataFrame вместе?Должен ли я ничего не делать?Какой самый быстрый способ сделать это?

Заранее спасибо

1 Ответ

0 голосов
/ 27 мая 2018

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

Вместо этого я рекомендую вычислитьдлина кадра данных

>>> len(df)
...