📜  如何基于两列在 Pandas 中加入两个数据框 - Python (1)

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

如何基于两列在 Pandas 中加入两个数据框 - Python

在Pandas中,您可以使用merge()函数基于两列来合并两个数据帧。下面我们将介绍如何使用merge()函数将两个数据框基于两列进行合并。

首先,让我们假设我们有两个具有相同列名的数据框df1和df2,我们要将它们基于"key1"和"key2"列合并。代码如下:

import pandas as pd

# 创建数据框
df1 = pd.DataFrame({
    'key1': ['A', 'B', 'C', 'D'],
    'key2': ['K0', 'K1', 'K2', 'K3'],
    'value1': [1, 2, 3, 4],
    'value2': [5, 6, 7, 8],
})

df2 = pd.DataFrame({
    'key1': ['A', 'B', 'C', 'D'],
    'key2': ['K0', 'K1', 'K2', 'K3'],
    'value3': [9, 10, 11, 12],
    'value4': [13, 14, 15, 16],
})

# 合并数据框
merged_df = pd.merge(df1, df2, on=['key1', 'key2'])

print(merged_df)

输出结果为:

  key1 key2  value1  value2  value3  value4
0    A   K0       1       5       9      13
1    B   K1       2       6      10      14
2    C   K2       3       7      11      15
3    D   K3       4       8      12      16

如上所示,我们使用merge()函数将两个数据框基于"key1"和"key2"列进行了合并。参数on指定了用于合并的列。

除了on参数,还有其他参数可以用于merge()函数。例如,您可以使用how参数指定合并方式(left、right、inner或outer),使用suffixes参数指定重复列名的后缀等等。如果您想了解更多细节,请查看Pandas文档。

总之,使用merge()函数基于两列在Pandas中加入两个数据框是非常简单的。希望这篇文章对您有所帮助!