Python中contains()函数在DataFrame中的应用与示例
发布时间:2023-12-15 18:37:28
在Python的pandas库中,DataFrame是一个二维的表格型数据结构。DataFrame拥有很多内置的方法,包括contains()方法,用于检查DataFrame中的字符串是否包含特定的子字符串。
contains()方法可以用来检查DataFrame中某一列的值是否包含指定的子字符串,并返回一个包含布尔值的Series,布尔值表示每个元素是否包含指定的子字符串。
以下是contains()方法在DataFrame中的示例:
import pandas as pd
# 创建一个DataFrame
data = {'Name': ['Tom', 'Jack', 'Steve', 'Ricky'],
'Age': [28, 34, 29, 42],
'City': ['New York', 'New Jersey', 'Chicago', 'Boston']}
df = pd.DataFrame(data)
# 检查Name列中的值是否包含'ac'
contains_ac = df['Name'].str.contains('ac')
print(contains_ac)
# 输出:
# 0 False
# 1 True
# 2 False
# 3 False
# Name: Name, dtype: bool
在上面的示例中,我们创建了一个包含Name、Age和City列的DataFrame。我们使用contains()方法检查Name列的每个元素是否包含'ac'子字符串。最后,我们打印了一个包含布尔值的Series,表示每个元素是否包含'ac'。
contains()方法还可以用于在DataFrame中进行筛选操作。我们可以使用contains()方法创建一个布尔索引,然后将其应用到DataFrame中。
以下是使用contains()方法进行筛选的示例:
import pandas as pd
# 创建一个DataFrame
data = {'Name': ['Tom', 'Jack', 'Steve', 'Ricky'],
'Age': [28, 34, 29, 42],
'City': ['New York', 'New Jersey', 'Chicago', 'Boston']}
df = pd.DataFrame(data)
# 筛选Name列中包含'ac'的行
filtered_df = df[df['Name'].str.contains('ac')]
print(filtered_df)
# 输出:
# Name Age City
# 1 Jack 34 New Jersey
在上面的示例中,我们使用contains()方法创建了一个布尔索引,表示Name列中字符串是否包含'ac'。然后,我们将这个布尔索引应用到DataFrame中,通过筛选操作得到了一个新的DataFrame,该DataFrame只包含符合条件的行。
总结一下,contains()方法是pandas库中的一个字符串方法,在DataFrame中用于检查某一列的值是否包含指定的子字符串。它不仅可以返回一个包含布尔值的Series,还可以用于在DataFrame中进行筛选操作。
