一:基础的函数组成

’’‘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,期待下次的分享。

  

#Python 文本包含函数,pandas库 Series.str.contains 函数的更多相关文章

  1. Python数据分析工具:Pandas之Series

    Python数据分析工具:Pandas之Series Pandas概述Pandas是Python的一个数据分析包,该工具为解决数据分析任务而创建.Pandas纳入大量库和标准数据模型,提供高效的操作数 ...

  2. 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍

    一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...

  3. 利用Python进行数据分析(8) pandas基础: Series和DataFrame的基本操作

    一.reindex() 方法:重新索引 针对 Series   重新索引指的是根据index参数重新进行排序. 如果传入的索引值在数据里不存在,则不会报错,而是添加缺失值的新行. 不想用缺失值,可以用 ...

  4. 利用python进行数据分析之pandas库的应用(二)

    本节介绍Series和DataFrame中的数据的基本手段 重新索引 pandas对象的一个重要方法就是reindex,作用是创建一个适应新索引的新对象 >>> from panda ...

  5. 【Python学习笔记】Pandas库之DataFrame

    1 简介 DataFrame是Python中Pandas库中的一种数据结构,它类似excel,是一种二维表. 或许说它可能有点像matlab的矩阵,但是matlab的矩阵只能放数值型值(当然matla ...

  6. 用python做数据分析4|pandas库介绍之DataFrame基本操作

    原文地址 怎样删除list中空字符? 最简单的方法:new_list = [ x for x in li if x != '' ] 今天是5.1号. 这一部分主要学习pandas中基于前面两种数据结构 ...

  7. pandas库Series类型与基本操作

    pandas读取excel的类型是dataFrame,然后提取每一列是一个Series类型 Series类型包括index和values两部分 a = pd.Series({'a':1,'b':5}) ...

  8. 利用python进行数据分析之pandas库的应用(一)

    一.pandas的数据结构介绍 Series Series是由一种类似于一维数组的对象,它由一组数据以及一组与之相关的数据索引构成.仅由一组数据可产生最简单的Series. obj=Series([4 ...

  9. 数据分析之pandas库--series对象

    1.Series属性及方法 Series是Pandas中最基本的对象,Series类似一种一维数组. 1.生成对象.创建索引并赋值. s1=pd.Series() 2.查看索引和值. s1=Serie ...

  10. 【转】Pandas的Apply函数——Pandas中最好用的函数

    转自:https://blog.csdn.net/qq_19528953/article/details/79348929 import pandas as pd import datetime #用 ...

随机推荐

  1. String的Equals()和==比较

    String的Equals()和==比较 常量池(Constant Pool):指的是在编译期被确定,并被保存在已编译的.class文件中的一些数据.JVM虚拟机为每个被装载的类型维护一个常量池.常量 ...

  2. lavarel导航分类不显示,因为域名问题不一致导致

    $front_menu = isset($category_map['hz9y.hzboso.com']) ? $category_map['hz9y.hzboso.com']->childre ...

  3. vue使用阿里oss上传

    1.首先用包管理工具 npm install ali-oss --S 下载oss依赖包 2.在util文件里创建util.js文件,在该文件写入 export default { getClient: ...

  4. 05-Spring的AOP编程之基于注解开发

    Spring的AOP基于注解的开发 首先在AOP配置文件中,开启注解的aop开发 <aop:aspectj-autoproxy></aop:aspectj-autoproxy> ...

  5. Notepad++行转列

    行转列\r\n

  6. Android笔记--案例:找回密码

    找回密码 具体实现: 登录成功: 报告密码不同: 报告验证码错误: 代码相关: 找回密码的界面很简单,不细说了,直接写就行 找回密码的逻辑实现: 下一次就去写数据存储啦! 拜拜!

  7. day06-静态资源访问&Rest风格

    SpringBoot之静态资源访问&REST风格请求 1.SpringBoot静态资源访问 1.1基本介绍 只要静态资源是放在类路径下的:/static./public./resources. ...

  8. 记一次 .NET 某企业 ERP网站系统 崩溃分析

    一:背景 1. 讲故事 前段时间收到了一个朋友的求助,说他的ERP网站系统会出现偶发性崩溃,找了好久也没找到是什么原因,让我帮忙看下,其实崩溃好说,用 procdump 自动抓一个就好,拿到 dump ...

  9. Junit环境配置和在IDEA中使用Junit学习记录

    Junit环境配置 步骤1:检查电脑中Java环境是否配置成功 因为JUnit 是 Java 的一个框架,所以最根本的需要是在你的机器里装有 JDK. 1.1 进入cmd控制台界面,输入java/ja ...

  10. ARC149(A~E)

    Tasks - AtCoder Regular Contest 149 又是114514年前做的题,现在来写 屯了好多,清一下库存 A - Repdigit Number (atcoder.jp) 直 ...