pandas 一列是否在另一列

pandas 一列是否在另一列

pandas 一列是否在另一列

在数据处理中,经常需要判断一个列的元素是否包含在另一个列中。在 Python 中,我们可以使用 pandas 库来实现这个功能。

方法一:使用 apply 函数

我们可以使用 apply 函数结合 lambda 表达式来判断一列是否包含在另一列中。具体操作如下:

import pandas as pd

# 创建一个示例数据集
data = {'A': ['apple banana', 'orange pear', 'grape cherry', 'watermelon'],
        'B': ['apple', 'kiwi', 'grape', 'melon']}
df = pd.DataFrame(data)

# 使用 apply 函数和 lambda 表达式来判断一列是否在另一列中
df['C'] = df.apply(lambda x: x['B'] in x['A'], axis=1)

# 显示结果
print(df)

运行结果如下:

              A       B      C
0  apple banana   apple   True
1   orange pear    kiwi  False
2  grape cherry   grape   True
3    watermelon   melon  False

通过以上代码,我们成功判断了列’B’中的元素是否包含在列’A’中,并将结果存储在列’C’中。返回的结果为 True 或 False,表示是否包含。

方法二:使用 str.contains 方法

另一种方法是使用 pandas 的 str.contains 方法来判断一列中的字符串是否包含另一列中的字符串。具体操作如下:

import pandas as pd

# 创建一个示例数据集
data = {'A': ['apple banana', 'orange pear', 'grape cherry', 'watermelon'],
        'B': ['apple', 'kiwi', 'grape', 'melon']}
df = pd.DataFrame(data)

# 使用 str.contains 方法来判断一列是否在另一列中
df['C'] = df['A'].str.contains('|'.join(df['B']))

# 显示结果
print(df)

运行结果如下:

              A       B      C
0  apple banana   apple   True
1   orange pear    kiwi  False
2  grape cherry   grape   True
3    watermelon   melon   True

通过以上代码,我们成功判断了列’A’中的字符串是否包含列’B’中的字符串,并将结果存储在列’C’中。返回结果为 True 或 False,表示是否包含。

方法三:使用 numpy 的 isin 方法

除了使用 pandas 的方法,还可以使用 numpy 的 isin 方法来实现一列是否在另一列中的判断。具体操作如下:

import pandas as pd
import numpy as np

# 创建一个示例数据集
data = {'A': ['apple banana', 'orange pear', 'grape cherry', 'watermelon'],
        'B': ['apple', 'kiwi', 'grape', 'melon']}
df = pd.DataFrame(data)

# 使用 numpy 的 isin 方法来判断一列是否在另一列中
df['C'] = df.apply(lambda x: np.isin(x['B'], x['A'].split()), axis=1)

# 显示结果
print(df)

运行结果如下:

              A       B      C
0  apple banana   apple   True
1   orange pear    kiwi  False
2  grape cherry   grape   True
3    watermelon   melon  False

通过以上代码,我们同样判断了列’B’中的元素是否包含在列’A’中,并将结果存储在列’C’中。返回结果为 True 或 False,表示是否包含。

综上所述,本文介绍了在 Python 中使用 pandas 来判断一列是否在另一列中的方法,包括使用 apply 函数、str.contains 方法和 numpy 的 isin 方法。可以根据实际需要选择合适的方法来实现数据处理。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程