python - 在 Pandas Column 中搜索每行值包含列表的字符串
问题描述
我有一个熊猫系列,每个值都是一个列表
零件 |
---|
[R797,R398] |
[R803,R93] |
我正在尝试在列中搜索以查找特定组件,例如 R797
我尝试过的是df[df['component'].str.contains('R797')]
,即使该值显然在列表中,它也会返回一个空表。
我一直在尝试遍历列表,但每次它说列表不可散列时,任何建议都会很棒
解决方案
让我们创建系列:
import pandas as pd
s = pd.Series([['R797','R398'],['R803','R93']])
结果:
0 [R797, R398]
1 [R803, R93]
现在apply
对每个元素(列表)进行 lambda 函数:
s.apply(lambda s: 'R797' in s)
输出:
0 True
1 False
dtype: bool
要查找元素:
s[s.apply(lambda s: 'R797' in s)]
结果:
0 [R797, R398]
dtype: object
推荐阅读
- php - 更新适用于本地主机,但不适用于实时更新
- authentication - 如何使用 azure devops 构建管道对 npm 注册表进行身份验证?
- c# - 我们可以在 Visual Studio 中选择性地生成 XML 文档吗?
- laravel - laravel-如何在同一个视图中创建单独的注册表单?
- python - 将参数传递给 Django Modelform 的 Meta 类
- python - 如何使用 pyotp 为不同的用户生成不同的 OTP 令牌?
- java - 如何修复错误 No serializer found for class java.util.logging.SimpleFormatter and no properties found to create BeanSerializer
- angular - 在 Visual Studio Code 中为自定义 npm 包自动导入声明
- python - 读取串口输入
- ionic-framework - ionic 4 在离子项目中聚焦时更改离子标签颜色