python笔记:str.contains小坑之 UserWarning To actually get the groups, use str.extract.

摘要:
Df=pd。DataFrame({'name':['A(上海)AAA','BB(上海)BB','CCC','DDD']})print(df)#结果如下:name0A(上海,AAA1BB(北京)BB2CCC3DDD问题:代码返回以下结果:UserWarning:Thispratternhasmatchgroups。要实际获取组,请使用˃str.extract.return
df = pd.DataFrame({'name': ['A(上海)AAA', 'BB(上海)BB', 'CCC', 'DDD']})
print(df)

#结果如下
name
0  A(上海)AAA
1BB(上海)BB
2CCC
3       DDD

问题:

代码返回如下结果:

UserWarning: This pattern has match groups. To actually get the groups, use >str.extract.
return func(self, *args, **kwargs)
name
2CCC

a = ['A(上海)AAA', 'BB(上海)BB', 'CCC']
b = df[df.name.str.contains('|'.join(a))]
print(b)

分析:

原因1:str.contains()不直接支持对象里边的括号,因为括号是正则表达式之一。

解决办法:

a = ['A(上海)AAA', 'BB(上海)BB', 'CCC']   #使用转义符 “”#或者 
a = ['A.上海.AAA', 'BB.上海.BB', 'CCC']

b = df[df.name.str.contains('|'.join(a))]
print(b)

#结果如下:
       name               #没有UserWarning了
0  A(上海)AAA
1BB(上海)BB
2       CCC

免责声明:文章转载自《python笔记:str.contains小坑之 UserWarning To actually get the groups, use str.extract.》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇vue2.0实现购物车功能SpringCache分布式缓存学习下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Java 集合系列17之 TreeSet详细介绍(源码解析)和使用示例

概要 这一章,我们对TreeSet进行学习。我们先对TreeSet有个整体认识,然后再学习它的源码,最后再通过实例来学会使用TreeSet。内容包括:第1部分 TreeSet介绍第2部分 TreeSet数据结构第3部分 TreeSet源码解析(基于JDK1.6.0_45)第4部分 TreeSet遍历方式第5部分 TreeSet示例 转载请注明出处:http...

一些linux命令行

显示时间:date 查看linux版本:lsb_release -a 关机:halt或者shutdown -h now 重启:reboot 切换用户:su root 查看磁盘空间占用:df -h 查看磁盘分区情况:fdisk -l 执行多条命令(用;隔开):cd;df -h 使用较长格式列出文件夹信息:ls -l 显示当前的工作目录:pwd 建文件夹:m...

获取JS数组中的相同元素的名称和数量

Js代码   <script>   var ary =["aaa","露露","bbb","aaa","ccc","ccc","aaa","露露","haha"];   var res = [];   ary.sort();   for(var i = 0;i<ary.length;)   {        var count = ...

python格式化输出(% format用法)

%基本用法: 十进制输出:print('%d' % 6)    6也可以换成其它的数字变量 八进制输出:print('%o' % 6)  6也可以换成其它的数字变量 字符串输出:print('%s' % a)  format用法:以{}符号代替了% print('{}').format('aaa') 可以指定参数进行格式化输出 print('{a} {...

C# 使用Lazy 懒加载

用Lazy对象能实现懒加载的效果,就是预先定制好对象,但是不去创建它,直到第一次使用的时候才会真正的创建,而且这个还是线程安全的,有了这个玩意,就不用自己去写类似的东西以及单例模式了 static void Start() { Lazy<AAA> aaa = new Lazy<AAA>();...

Java 的类加载顺序

Java 的类加载顺序 一、加载顺序:先父类后子类,先静态后普通 1、父类的静态成员变量初始化 2、父类的静态代码块 3、子类的静态成员变量初始化 4、子类的静态代码块 5、父类的普通成员变量初始化 6、父类的普通代码块 7、父类的无参构造器 8、子类的普通成员变量 9、子类的普通代码块 10、子类的无参构造器 二、示例代码   超级父类A,父类B,子类C...