python - 仅过滤列中的某些行?
问题描述
如果我在下面有一个df:
name|
Bob
3245
Chris
Amy
Chris
3242424
Amy
如果我只想为 amy 归档但保留所有有数字的行,我该怎么做?
基本上过滤所有文本为 amy 的行,但也包括所有其他不是名称但也包括数字的行?
输出:
name|
3245
Amy
3242424
Amy
谢谢
解决方案
你可以试试.str.match
:
df[df['name'].str.match('Amy').fillna(True) ]
或者你可以试试你的逻辑:
mask = df['name'].eq('Amy') | df['name'].astype(str).str.isnumeric()
df[mask]
输出:
name
1 3245
3 Amy
5 3242424
6 Amy
推荐阅读
- python-3.x - 从担任的角色担任角色
- arrays - -> 条件的任何快捷方式?['yes'] : ['yes', 'no'] 飞镖?
- parameter-passing - 如何将数组参数传递到 ADF 数据流
- nested - 在使用 gtsummary 对两个分类变量上的连续变量进行汇总时,如何添加每个类别的观察数?
- android - Google Play - 将版本从内部轨道推广到生产和 Google 审查
- c# - c# VSTO 问题与正确的语法 - activeWindow 是资源管理器
- mesh - 我们如何在 MeshLab 中以数值方式评估曲面重建算法的准确性?
- c++ - 对 VS 代码使用 C/C++ 扩展,无需安装任何编译器
- c++ - C ++中的条件变量wait_for
- javascript - 如何修剪在Javascript中有多行的字符串