python - 创建函数以在特定列上合并给定数量的数据框
问题描述
我想创建一个函数来处理不确定数量的数据帧,然后将它们合并到给定的列上,这实际上是最左边的列。
我应该使用 *args 之类的东西吗?
import pandas as pd
def merge_given_dfs(*args):
pd.merge(*args,left_on='name')
merge_given_dfs(df1,df2,df3,df4)
谢谢!
解决方案
尝试传递数据框列表以及其他感兴趣的参数。在任何合并之前,您可以指出应该从哪个 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
推荐阅读
- sublimetext3 - SublimeText3 保持行折叠
- google-cloud-platform - Gcloud 的功能从 shell 到 cloudbuild.yaml 不同
- ios - 有没有办法通过使用 UIButton 操作增加计数来遍历 Swift 中的数组中的元素?
- c# - 通过 LINQ 从 XML 反序列化
- python - 将字典和列表值动态传递给 json 有效负载
- rest - 仅反序列化少数属性
- r - 如何保存高度很长的图片
- python - 带有 API 调用的 Django LRU_Cache
- lisp - 在 lisp 中查找最大值
- ios - HKAnchoredObejctQuery 不返回新结果+不一致