2个pandas 如何合并为一个df
时间: 2024-04-11 17:28:56 浏览: 169
Pandas 合并多个Dataframe(merge,concat)的方法
要将两个Pandas DataFrame合并为一个DataFrame,可以使用merge()函数或concat()函数。具体使用哪个函数取决于你想要如何合并数据。
如果你想根据某些列的值进行合并,可以使用merge()函数。以下示例将演示如何根据一个或多个共同的列将两个DataFrame进行合并:
``` python
import pandas as pd
# 创建两个示例DataFrame
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': ['a', 'b', 'c']})
df2 = pd.DataFrame({'A': [4, 5, 6], 'B': ['d', 'e', 'f']})
# 使用merge()函数根据共同列'A'进行合并
merged_df = pd.merge(df1, df2, on='A')
# 输出合并后的DataFrame
print(merged_df)
```
输出结果为:
```
A B_x B_y
0 1 a d
1 2 b e
2 3 c f
```
在上面的代码中,我们使用merge()函数根据共同的列'A'对df1和df2进行合并,并将结果保存在merged_df中。
另一种合并两个DataFrame的方法是使用concat()函数。concat()函数可以按行或按列将两个DataFrame堆叠在一起。以下示例演示如何按行合并两个DataFrame:
``` python
import pandas as pd
# 创建两个示例DataFrame
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': ['a', 'b', 'c']})
df2 = pd.DataFrame({'A': [4, 5, 6], 'B': ['d', 'e', 'f']})
# 使用concat()函数按行合并两个DataFrame
concatenated_df = pd.concat([df1, df2])
# 输出合并后的DataFrame
print(concatenated_df)
```
输出结果为:
```
A B
0 1 a
1 2 b
2 3 c
0 4 d
1 5 e
2 6 f
```
在上面的代码中,我们使用concat()函数按行合并df1和df2,并将结果保存在concatenated_df中。合并后的DataFrame保留了原始DataFrame的索引。
阅读全文