Python 如何将dask数据帧的所有部分合并在一起
我有一个销售数据框,它有2800万行,还有一些其他数据框,还有一个示例aPython 如何将dask数据帧的所有部分合并在一起,python,dataframe,merge,dask,Python,Dataframe,Merge,Dask,我有一个销售数据框,它有2800万行,还有一些其他数据框,还有一个示例aProductDataFrame 当我第一次将pandas数据帧转换为Dask数据帧时: sales_dd = dd.from_pandas(Sales, npartitions=3) #28M rows product_dd = dd.from_pandas(Product, npartitions=3) #600 rows 转换Dask数据帧后可以看到我的数据 sales_dd.tail()
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数据帧后
可以看到我的数据
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
在我尝试像这样合并这两个dask数据帧之后:
productsales = dd.merge(sales_dd, product_dd, on='ProductNo', how='left')
然后当我检查最后一个数据帧时
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行
我的问题是如何将所有数据帧合并在一起?我不必分钱吗?最快的方法是什么
提前感谢左侧的数字索引不一定给出行数,它是数据帧的索引值,可以保存除简单递增索引之外的其他值 相反,我建议计算数据帧的长度
>>> len(df)
嘿@MRocklin没错,这是和以前一样的一排,但为什么会发生呢?