📅  最后修改于: 2023-12-03 15:23:39.657000             🧑  作者: Mango
在数据分析中,经常需要对两个或多个数据集进行操作,比如取它们的交集。本文将介绍如何使用 Python 中的 pandas 模块来实现基于列的数据帧的交集操作。
首先,我们需要创建两个数据帧,用于演示交集操作。
import pandas as pd
df1 = pd.DataFrame({
'A': [1, 2, 3, 4, 5],
'B': [10, 20, 30, 40, 50],
})
df2 = pd.DataFrame({
'A': [3, 4, 5, 6, 7],
'B': [30, 40, 50, 60, 70],
})
以上代码创建了两个包含两列数据的数据帧 df1 和 df2。
我们可以使用 pandas 中的 head() 方法来查看两个数据帧的前几行数据。
print(df1.head())
"""
A B
0 1 10
1 2 20
2 3 30
3 4 40
4 5 50
"""
print(df2.head())
"""
A B
0 3 30
1 4 40
2 5 50
3 6 60
4 7 70
"""
现在我们可以执行基于列的数据帧交集操作了。
result = pd.merge(df1, df2, on=['A', 'B'], how='inner')
以上代码使用了 pandas 中的 merge() 方法来执行交集操作,其中 on 参数指定要使用的列名,how 参数指定交集操作方式为 'inner',即取两个数据帧中列数据完全相同的行。
最后,我们可以使用 pandas 中的 head() 方法来查看交集结果。
print(result.head())
"""
A B
0 3 30
1 4 40
2 5 50
"""
以上代码输出了两个数据帧的交集结果。
到此为止,我们已经学会了如何使用 Python 中的 pandas 模块来执行基于列的数据帧交集操作。