Eli*_*man 4 python dataframe pandas dask dask-dataframe
我目前有一个用 pandas 编写的简单脚本,我想将其转换为 dask 数据帧。
在此脚本中,我正在对用户指定列上的两个数据帧执行合并,并尝试将其转换为 dask。
def merge_dfs(df1, df2, columns):
merged = pd.merge(df1, df2, on=columns, how='inner')
...
Run Code Online (Sandbox Code Playgroud)
如何更改此行以匹配 dask 数据帧?
合并dask遵循pandas语法,因此只需用对 的调用替换pandas对 的调用dask.dataframe:
import dask.dataframe as dd
def merge_dfs(df1, df2, columns):
merged = dd.merge(df1, df2, on=columns, how='inner')
# ...
Run Code Online (Sandbox Code Playgroud)
生成的数据帧merged将为 a dask.dataframe,因此可能需要下游计算。如果您将数据保存到文件中,例如使用.to_csv或 with ,这将自动完成.to_parquet。
如果您需要数据帧进行某些计算并且数据适合内存,则调用.compute将创建一个pandas数据帧:
pandas_df = merged.compute()
Run Code Online (Sandbox Code Playgroud)