【问题标题】:Vertically concatenate multiple dataframes垂直连接多个数据帧
【发布时间】:2019-11-05 02:58:47
【问题描述】:
所以我试图交织大约 3 个数据帧,结果应该如下所示:
df1
A
D
G
df2
B
E
H
df3
C
F
I
结果df:
A
B
C
D
E
F
G
H
I
我试过了:
for i in len(df1+df2+df3):
final_df.append(i)
我希望使用 n 个数据帧尽可能高效地完成此操作
【问题讨论】:
标签:
python
pandas
loops
dataframe
【解决方案1】:
参考Spark unionAll multiple dataframes:
您可以简单地将所有数据框放入一个列表中,然后对它们执行unionAll,如下所示:
from functools import reduce
from pyspark.sql import DataFrame
dfs = [df1,df2,df3]
df = reduce(DataFrame.unionAll, dfs)
【解决方案2】:
使用pd.concat:
pd.concat([df1, df2, df3], ignore_index=True)
您可以根据需要连接任意数量的数据帧。