Python 如何在pandas中迭代合并数据帧?
给定一个数据帧列表,我希望迭代合并它们并返回单个数据帧。输入:Python 如何在pandas中迭代合并数据帧?,python,pandas,frames,Python,Pandas,Frames,给定一个数据帧列表,我希望迭代合并它们并返回单个数据帧。输入:帧(熊猫数据帧列表)和列(包含要合并的列名的字符串或字符串列表)。如何使用df.merge来完成此任务? """ 给定数据帧列表,迭代合并它们并返回 单数据帧 """HINT: Use slice on frames when iterating and merging. Arguments: frames {list} -- a list of pandas DataFrames on_columns {strin
帧
(熊猫数据帧列表)和列
(包含要合并的列名的字符串或字符串列表)。如何使用df.merge
来完成此任务?
"""
给定数据帧列表,迭代合并它们并返回
单数据帧
"""HINT: Use slice on frames when iterating and merging.
Arguments:
frames {list} -- a list of pandas DataFrames
on_columns {string or list} -- a string or list of strings
containing the column names on which to join
Returns:
df -- a pandas.DataFrame containing a merged version of the
two provided dataframes. If frames is None or an empty list return None
"""
def merge(frames, on_columns):
#implementation here
df = #merged df
return df
编辑:我想也许我可以使用df.concat,但不确定如何使用?类似的东西应该可以工作
def merge(frames, on_columns):
#implementation here
if not frames:
return None
if len(frames) == 1:
return frames[0]
out = frames[0]
for df in frames[1:]:
out = out.merge(df, on=on_columns)
return out
将熊猫作为pd导入
df=下一个(dfs)
对于dfs中的记录:
df=df.append(记录)
#以上相当于
df=局部放电浓度(dfs)
注意事项:
是pandas.DataFrame对象的迭代器dfs
- 每个
都有相同的列dfs
- 可能希望在完成所有附件后重新编制索引
- 已尝试,但不清楚函数(df1、df2)应该是什么(即
需要一个iterable);无论如何pd.concat
实用程序会减少pd.concat
- 列出了
和其他实用程序pd.concat
注意:不要创建图书馆已经提供的功能,请高兴地阅读文档并重新阅读文档,尤其是因为熊猫文档是卷在每种情况下,列上的内容是否相同?似乎是
reduce
的一种情况,因为它类似,但我想合并on\u列
中提供的所有列,而不仅仅是o相互不同的网元。你能提供一个示例数据和预期输出吗?我编辑了它-希望有点帮助。酷,你能接受这个作为答案,然后通过向上投票吗?如果可以,你可以删除第二个statement@DoganAskan是的,但由于我还没有超过15岁,所以我的支持票没有公开展示。