将concat用于字典,我得到一个错误:第一个参数必须是可迭代的pandas对象,您传递了一个类型为“ DataFrame”的对象]]

问题描述 投票:0回答:1

我有一个带有数据帧的字典,看起来像这样:

dataframes = {'Df_20100101': DataFrame, 'Df_20100102': DataFrame, 'Df_20100103': DataFrame}

所有数据框具有相同的变量(价格,数量和日期)和相同的索引。我想将所有不同的数据框放入1个数据框。我使用以下代码:

df = pd.concat([pd.concat(v,ignore_index=True) for k,v in dataframes.items()])

但是,我收到一个错误:the first argument must be iterable of pandas objects, you passed an object of type "DataFrame"

是因为所有变量都具有相同的索引吗?

有人可以帮我吗?

谢谢!

我有一个带有数据帧的字典,看起来像这样:dataframes = {'Df_20100101':DataFrame,'Df_20100102':DataFrame,'Df_20100103':DataFrame}所有数据帧都具有相同的变量(价格,...

python pandas dictionary concat
1个回答
1
投票

您正在字典中的各个数据帧上调用pd.concat(您嵌套了pd.concat()调用)。相反,您只希望列表理解将数据帧收集到单个列表中,然后在该列表上调用.concat()

df = pd.concat([v for _, v in dataframes.items()], ignore_index=True)
© www.soinside.com 2019 - 2024. All rights reserved.