【发布时间】:2018-11-08 00:01:42
【问题描述】:
使用 Python 中的 pandas 库,我的代码中有一个设备,如下所示:
BadData = len(df[df.A1.str.contains('A|T|C|G')==False])
我在这里要做的是计算数据框df 的A1 列中不包含字母A、T、C的任何组合的条目数, 和 G。
这些表达式应该算作BadData:
- 123
- 富
但这些表达方式不应该:
- 一个
- ATCG
- 加特卡塔
我的问题:如何使用正则表达式字符在BadData 中包含“Apple”或“Golfing”等条目?
我可以像这样将条件链接在一起:
BadData = len(df[(df.A1.str.contains('A|T|C|G')==False) & (df.A1.str.contains('0|1|2|3')==TRUE)])
但在这里我面临一个难题:我是否必须定义每个违反条件的角色?这看起来很笨拙,我相信还有更优雅的方法。
【问题讨论】:
标签: python regex pandas logical-operators