获取Pandas DataFrame中包含给定子字符串的所有记录

  • Post category:Python

要获取Pandas DataFrame中包含给定子字符串的所有记录,可以使用Pandas中的str.contains()函数。该函数可以接受一个子字符串,返回一个布尔Series,其中True表示对应的字符串包含子字符串,False表示不包含。

接下来是详细的攻略:

  1. 首先,导入Pandas库,并创建一个DataFrame。以下是一个示例DataFrame:

    “`
    import pandas as pd

    df = pd.DataFrame({
    ‘Name’: [‘John’, ‘Alice’, ‘Bob’, ‘Charlie’],
    ‘Age’: [25, 30, 40, 20],
    ‘Address’: [‘123 Main St’, ‘456 Park Ave’, ‘789 Elm St’, ’10 Maple Ln’]
    })
    “`

  2. 然后,使用str.contains()函数来查找包含给定子字符串的记录。以下是一个示例代码:

    substring = 'St'
    result = df[df['Address'].str.contains(substring)]
    print(result)

    在这里,我们搜索包含’St’子字符串的记录,并将结果存储在变量result中。然后,我们打印结果以确认搜索结果是否正确。

    输出结果如下:

    Name Age Address
    0 John 25 123 Main St
    2 Bob 40 789 Elm St

  3. 你也可以使用正则表达式来搜索包含满足特定模式的字符串的记录。以下是示例代码:

    “`
    import re

    regex_pattern = ‘^[0-9]’
    result = df[df[‘Address’].str.contains(regex_pattern, regex=True)]
    print(result)
    “`

    在这里,我们使用正则表达式模式’^[0-9]’来搜索以数字开头的地址,并将结果存储在变量result中。

    输出结果如下:

    Name Age Address
    0 John 25 123 Main St
    3 Charlie 20 10 Maple Ln

以上就是获取Pandas DataFrame中包含给定子字符串的所有记录的完整攻略,和相应的示例代码。