一尘不染

检查字符串是否在熊猫数据框中

python

我想查看数据框内特定列中是否存在特定字符串。

我遇到了错误

ValueError:系列的真值不明确。使用a.empty,a.bool(),a.item(),a.any()或a.all()。

import pandas as pd

BabyDataSet = [('Bob', 968), ('Jessica', 155), ('Mary', 77), ('John', 578), ('Mel', 973)]

a = pd.DataFrame(data=BabyDataSet, columns=['Names', 'Births'])

if a['Names'].str.contains('Mel'):
    print "Mel is there"

阅读 154

收藏
2020-12-20

共1个答案

一尘不染

a['Names'].str.contains('Mel') 将返回大小为布尔值的指标向量 len(BabyDataSet)

因此,您可以使用

mel_count=a['Names'].str.contains('Mel').sum()
if mel_count>0:
    print ("There are {m} Mels".format(m=mel_count))

或者any(),如果您不在乎有多少条记录与您的查询匹配

if a['Names'].str.contains('Mel').any():
    print ("Mel is there")
2020-12-20