首页 > 解决方案 > 创建函数以在特定列上合并给定数量的数据框

问题描述

我想创建一个函数来处理不确定数量的数据帧,然后将它们合并到给定的列上,这实际上是最左边的列。

我应该使用 *args 之类的东西吗?


import pandas as pd

def merge_given_dfs(*args):

    pd.merge(*args,left_on='name')

merge_given_dfs(df1,df2,df3,df4)

谢谢!

标签: pythonpandasdataframemergeargs

解决方案


尝试传递数据框列表以及其他感兴趣的参数。在任何合并之前,您可以指出应该从哪个 df 开始合并:

import pandas as pd

def merge_given_dfs(initdf, dataframes, *args):
    for dataframe in dataframes:
        if initdf != dataframe:
            initdf.merge(dataframe, *args)
    return initdf

推荐阅读