相关疑难解决方法(0)

如何从Pandas数据帧中过滤包含字符串模式的行

假设我们在Python Pandas中有一个数据框,如下所示:

df = pd.DataFrame({'vals': [1, 2, 3, 4], 'ids': [u'aball', u'bball', u'cnut', u'fball']})
Run Code Online (Sandbox Code Playgroud)

或者,以表格形式:

ids    vals
aball   1
bball   2
cnut    3
fball   4
Run Code Online (Sandbox Code Playgroud)

如何过滤包含关键词"ball?"的行?例如,输出应为:

ids    vals
aball   1
bball   2
fball   4
Run Code Online (Sandbox Code Playgroud)

python dataframe pandas

108
推荐指数
4
解决办法
21万
查看次数

如何测试一个字符串是否包含列表中的一个子字符串?

是否有任何功能相当于df.isin()df[col].str.contains()?的组合?

例如,假设我有这个系列 s = pd.Series(['cat','hat','dog','fog','pet']),并且我想找到s包含任何内容的所有地方['og', 'at'],我想要获得除了宠物之外的一切.

我有一个解决方案,但它相当不优雅:

searchfor = ['og', 'at']
found = [s.str.contains(x) for x in searchfor]
result = pd.DataFrame[found]
result.any()
Run Code Online (Sandbox Code Playgroud)

有一个更好的方法吗?

python string match dataframe pandas

90
推荐指数
3
解决办法
8万
查看次数

检查字符串是否在pandas数据帧中

我想看看我的数据帧中的特定列中是否存在特定字符串.

我收到了错误

ValueError:Series的真值是不明确的.使用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"
Run Code Online (Sandbox Code Playgroud)

python python-2.7 pandas

47
推荐指数
4
解决办法
8万
查看次数

标签 统计

pandas ×3

python ×3

dataframe ×2

match ×1

python-2.7 ×1

string ×1