首页 > 编程语言 >#Python 文本包含pandas的 Series.str.contains函数

#Python 文本包含pandas的 Series.str.contains函数

时间:2023-02-03 13:34:31浏览次数:41  
标签:pat Python Series contains data1 str 筛选 True

一:基础的函数组成

’’‘Series.str.contains(pat,case = True,flags = 0,na = nan,regex = True)’’'
测试pattern或regex是否包含在Series或Index的字符串中。

返回布尔值系列或索引,具体取决于给定模式或正则表达式是否包含在系列或索引的字符串中。

pat : str类型
字符序列或正则表达式。

case : bool,默认为True
如果为True,区分大小写。

flags : int,默认为0(无标志)
标志传递到re模块,例如re.IGNORECASE。

na : 默认NaN
填写缺失值的值。

regex : bool,默认为True
如果为True,则假定pat是正则表达式。

如果为False,则将pat视为文字字符串。

二:示例应用

2.1 数据源展示

模拟一个奶茶销售表,包含商品名称,订单状态,销售金额,门店属性四个维度。

 

 

 2.2 条件筛选(多列)

假设需求:目前需要直营门店、已完成状态的销售表

#模块导入
import pandas as pd 
import numpy as np
#路径设置
source_data = r"E:/360MoveData/Users/B/Desktop/pandas_test.xlsx"
out_put = r"E:/360MoveData/Users/B/Desktop/output_data.xlsx"
#筛选条件设置
t1 = data1["门店属性"].str.contains("直营")
t2 = data1["订单状态"].str.contains("已完成")
#根据筛选条件返回成表
result = data1[t1&t2]
#输出成表
print(result)
#导出
result.to_excel(out_put)

 输出结果,如下。

 

 

 通过函数我们可以同时控制多个列的筛选条件,并输出成表。

2.3 文本筛选(同一列)

仍旧使用前文的数据源

现在我们假设需求:商品品名中含有"奶茶",或者"果茶"的商品销售表

首先,我们来试试上一种方式,可以看到,这里的输出并不是我们想要的表

 

这里,我们换一个方式来实现。

data1.loc[data1["商品"].str.contains("奶茶|果茶",na = False),"订单判断"] = "目标订单"

  

 

 可以看到,商品这一列中含有奶茶、果茶的商品被标记了。

3:总结

利用str.contains,我们可以筛选同一列,不同列的数据,对于活动清洗、订单清洗等数据清洗环节,可以更快的标记对应的订单。

我是simone,期待下次的分享。

 

 

  

标签:pat,Python,Series,contains,data1,str,筛选,True
From: https://www.cnblogs.com/simone331/p/17088904.html

相关文章

  • Python算术运算符
    Python算术运算符以下假设变量: a=10,b=20:运算符描述实例+加-两个对象相加a+b输出结果30-减-得到负数或是一个数减去另一个数a-b输出结果-10*乘-两个数相乘或......
  • Python中有几种数据类型?
    变量用来存储数据,那么大家有没有想过,我们应该让变量占用多大空间,保存什么样的数据呢?问:说说Python中有几种数据类型?答:Python中主要有8种数据类型:number(数字)、string(字......
  • python基础day03
    #作用:记录/存多个值,可以方便地取出来指定位置的值,比如人的多个爱好,一堆学生姓名#定义:在[]内用逗号分隔开多个任意类型的值l=[10,3.1,'egon',['a','b']]#l=list([10,3.......
  • Micropython 之 旋转立方块
    入门ESP32-C3,学习Micropython还是先从自己手上的模块开始,MPU6050是一个很好的选择,很多场合都用得上。记得几年前用STM32F103接过MPU6050,然后用匿名上位机观测模拟飞机的飞......
  • Python \xee16进制转中文汉字
    在网络传输的时候会默认编码问题再加上编码器老旧的问题导致utf-8反编不成功直接导入到16进制数据变为ascll码试一试正好一下成功代码例子如下 importbinascii ......
  • Python判断字符串是否为空
    Python判断字符串是否为空和null方法实例判断python中的一个字符串是否为空,可以使用如下方法1、使用字符串长度判断len(s)==0则字符串为空#!/user/local/python/bin/......
  • Python fir 单线程下载脚本
    importrequests,os,timeimporturllib3urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)frompathlibimportPathfromtqdmimporttqdmfrom......
  • Python 高级编程之面向对象(一)
    目录一、概述二、面向对象的概念介绍1)类定义2)类属性3)类方法4)构造方法(init)三、面向对象封装、继承和多态1)封装2)继承3)子类重新方法和super()调用父类方法4)多态一、概述科班......
  • Python fir 下载脚本兼容iOS
    思路方法一:类似Android处理,用接口下载文件后,直接通过数据线进行安装方法二:通过服务端返回下载URL,iOS用快捷指令处理 最后选取的第二种方法。对之前脚本做如下修改:1......
  • python内置函数map
    map()函数介绍map()是python的一个内置函数,其作用是返回一个迭代器,该迭代器将function函数应用于iterable的每个项,并产生结果。map函数的语法:map(function,iterable,......