python - 通过布尔函数过滤熊猫数据框
问题描述
我需要使用仅在一列字符串上的函数来过滤熊猫数据框。
这是数据框的示例:
ID Titles Values
0 1 title1 value1
1 2 title2 value2
2 3 title3 value3
...
我有一个复杂的功能:
def checkTitle(title:str) -> bool :
...
我想用这个函数在列标题上过滤第一个数据帧,只有函数发送 True 的行。
我尝试了类似的方法,但它没有返回任何可用的东西:
df = df.apply(checkTitle(df["Titles"]),axis=1)
你能帮忙吗?
解决方案
您可以将该函数仅应用于数据框的一列,然后使用生成的布尔系列来选择行:
select = df.Titles.apply(checkTitle)
df = df.loc[select, :]
推荐阅读
- bigcartel - 如何从 Big Cartel Roadie 主题中删除页面
- r - 使用查找将行添加到数据集
- ios - 英文本地化中 Xcode 12 中 localizable.strings 文件中的错误
- visual-studio-code - 有没有办法在 VSCode 中配置“toggleEditorWidths”的屏幕百分比?
- python - 用 pandas 标记每列中的第一个非零元素
- reactjs - 反应变量在外部事件中没有反应
- sql - QGIS 查询过滤器:使用太多 OR 运算符时为 0 个结果
- azure - Azure B2C:生成 code_challenge
- ember.js - Fabric JS Tint Filter 应用时调整图像 Ember 项目的大小
- excel - 我有一个 VBA 代码。应该如何将其转换为 VbScript 代码