📌  相关文章
📜  合并两个数据框 pandas - Python (1)

📅  最后修改于: 2023-12-03 14:50:40.052000             🧑  作者: Mango

合并两个数据框

当处理数据时,我们经常需要将两个数据框合并成一个。Pandas 是一个强大的 Python 库,它提供了多种方法来合并和连接数据框。

以下是几种常用的合并数据框的方法:

1. 使用 concat 函数

concat 函数可以按指定的轴将两个或多个数据框连接起来。默认情况下,它在行方向上进行连接。

import pandas as pd

# 创建两个示例数据框
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
df2 = pd.DataFrame({'A': [7, 8, 9], 'B': [10, 11, 12]})

# 使用 concat 函数合并数据框
result = pd.concat([df1, df2])

# 打印合并结果
print(result)

输出结果:

   A   B
0  1   4
1  2   5
2  3   6
0  7  10
1  8  11
2  9  12
2. 使用 merge 函数

merge 函数根据一个或多个键将两个数据框连接起来。它与 SQL 中的 JOIN 操作相似。

import pandas as pd

# 创建两个示例数据框
df1 = pd.DataFrame({'key': ['A', 'B', 'C'], 'value': [1, 2, 3]})
df2 = pd.DataFrame({'key': ['B', 'C', 'D'], 'value': [4, 5, 6]})

# 使用 merge 函数合并数据框
result = pd.merge(df1, df2, on='key')

# 打印合并结果
print(result)

输出结果:

  key  value_x  value_y
0   B        2        4
1   C        3        5
3. 使用 join 方法

join 方法是 DataFrame 对象的方法,它将两个数据框按照索引连接起来。

import pandas as pd

# 创建两个示例数据框
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}, index=[0, 1, 2])
df2 = pd.DataFrame({'C': [7, 8, 9], 'D': [10, 11, 12]}, index=[1, 2, 3])

# 使用 join 方法合并数据框
result = df1.join(df2)

# 打印合并结果
print(result)

输出结果:

   A  B    C     D
0  1  4  NaN   NaN
1  2  5  7.0  10.0
2  3  6  8.0  11.0

以上是几种常用的合并数据框的方法。根据不同的数据集和需求,选择适合的方法来合并数据框可以提高数据处理的效率和准确性。