📜  获取包含字符串的列 - Python (1)

📅  最后修改于: 2023-12-03 15:41:27.619000             🧑  作者: Mango

获取包含字符串的列 - Python

在数据分析和数据处理中,有时需要在一列数据中查找包含特定字符串的行。Python提供了各种方法来实现这个任务。

方法1 - 使用pandas库

可以使用pandas库中的str.contains()方法来查找包含特定字符串的行。

示例代码:

import pandas as pd

data = {"Name": ["John", "Mary", "Peter", "David"],
        "Age": [25, 30, 28, 32],
        "City": ["New York", "London", "Paris", "Tokyo"]}
df = pd.DataFrame(data)

result = df[df["City"].str.contains("on")]

print(result)

Markdown说明:

  • 首先介绍了使用pandas库的str.contains()方法实现查找包含特定字符串的行。
  • 然后给出了一个示例代码,定义了一个data字典,包含了Name、Age和City三列数据,使用pandas库中的DataFrame()方法将其转换为DataFrame。
  • 接着在DataFrame上使用df["City"].str.contains("on")来查找包含字符串"on"的行,并将结果存储到result变量中。
  • 最后将result结果打印输出到控制台。
方法2 - 使用numpy库

另外一个常用的方法是使用numpy库中的numpy.char.contains()方法来查找包含特定字符串的行。

示例代码:

import numpy as np

data = np.array([["John", 25, "New York"],
                 ["Mary", 30, "London"],
                 ["Peter", 28, "Paris"],
                 ["David", 32, "Tokyo"]])

result = data[np.char.find(data[:, 2], "on") != -1]

print(result)

Markdown说明:

  • 首先介绍了使用numpy库的numpy.char.contains()方法实现查找包含特定字符串的行。
  • 然后给出了一个示例代码,定义了一个numpy数组data,包含了Name、Age和City三列数据。
  • 接着在numpy数组上使用np.char.find(data[:, 2], "on") != -1来查找包含字符串"on"的行,并将结果存储到result变量中。其中data[:, 2]表示取data数组中第3列数据。
  • 最后将result结果打印输出到控制台。

以上就是Python中查找包含字符串的行的两种常用方法。可以根据实际需求选择使用其中的一种方法。