首页 > 其他分享 >pandas之filter

pandas之filter

时间:2023-08-07 09:56:31浏览次数:35  
标签:02 Delivered df res filter 订单 2022 pandas

数据准备

import pandas as pd


product_info = {
    "订单号": [ "2951110000099262111", "2181910000909928191", "2194560000121355545", "1194560000121311126", "1483160000121315483"],
    "数量": [92, 61, 66, 33, 15],
    "价格(USD)": [230, 122, 150, 190, 200],
    "状态": ["Not Delivered", "Not Delivered", "Not Delivered", "Not Shipped", "Not Delivered"],
    "订单日期": ["2022-02-12", "2022-03-02", "2022-01-22", "2022-02-22", "2022-02-15"],
    "订单编号": ["444111", "444122", "444132", "444003", "444244"],
}

df = pd.DataFrame(product_info, index=['one', 'two', 'three', 'four', 'five'])
print(df)
'''
                       订单号  数量  价格(USD)             状态        订单日期    订单编号
one    2951110000099262111  92      230  Not Delivered  2022-02-12  444111
two    2181910000909928191  61      122  Not Delivered  2022-03-02  444122
three  2194560000121355545  66      150  Not Delivered  2022-01-22  444132
four   1194560000121311126  33      190    Not Shipped  2022-02-22  444003
five   1483160000121315483  15      200  Not Delivered  2022-02-15  444244
'''

方法介绍

按columns过滤

全列名过滤

# 过滤出列名为“订单号”和“订单编号”列
res_df = df.filter(items=["订单号", '订单编号'])
print(res_df)
'''
                       订单号    订单编号
one    2951110000099262111  444111
two    2181910000909928191  444122
three  2194560000121355545  444132
four   1194560000121311126  444003
five   1483160000121315483  444244
'''

模糊过滤

# 过滤出列名中包含“订单”的所有列
res_df = df.filter(like='订单', axis=1)
print(res_df)
'''
                       订单号        订单日期    订单编号
one    2951110000099262111  2022-02-12  444111
two    2181910000909928191  2022-03-02  444122
three  2194560000121355545  2022-01-22  444132
four   1194560000121311126  2022-02-22  444003
five   1483160000121315483  2022-02-15  444244
'''

正则过滤

# 过滤出以"订单"开头的所有列
res_df = df.filter(regex='^订单', axis=1)
print(res_df)
'''
                       订单号        订单日期    订单编号
one    2951110000099262111  2022-02-12  444111
two    2181910000909928191  2022-03-02  444122
three  2194560000121355545  2022-01-22  444132
four   1194560000121311126  2022-02-22  444003
five   1483160000121315483  2022-02-15  444244
'''

按index过滤

全名称过滤

# 过滤出index为"one", "four"的行
res_df = df.filter(items=["one", 'four'], axis=0)
print(res_df)
'''
                      订单号  数量  价格(USD)             状态        订单日期    订单编号
one   2951110000099262111  92      230  Not Delivered  2022-02-12  444111
four  1194560000121311126  33      190    Not Shipped  2022-02-22  444003
'''

模糊过滤

# 过滤出index包含"e"的所有行
res_df = df.filter(like='e', axis=0)
print(res_df)
'''
                       订单号  数量  价格(USD)             状态        订单日期    订单编号
one    2951110000099262111  92      230  Not Delivered  2022-02-12  444111
three  2194560000121355545  66      150  Not Delivered  2022-01-22  444132
five   1483160000121315483  15      200  Not Delivered  2022-02-15  444244
'''

正则过滤

# 过滤出以"t"开头的所有行
res_df = df.filter(regex='^t', axis=0)
print(res_df)
'''
                       订单号  数量  价格(USD)             状态        订单日期    订单编号
two    2181910000909928191  61      122  Not Delivered  2022-03-02  444122
three  2194560000121355545  66      150  Not Delivered  2022-01-22  444132
'''

# 过滤出以"t"开头或以"f"开头的所有行
res_df = df.filter(regex='^t|^f', axis=0)
print(res_df)
'''
                       订单号  数量  价格(USD)             状态        订单日期    订单编号
two    2181910000909928191  61      122  Not Delivered  2022-03-02  444122
three  2194560000121355545  66      150  Not Delivered  2022-01-22  444132
four   1194560000121311126  33      190    Not Shipped  2022-02-22  444003
five   1483160000121315483  15      200  Not Delivered  2022-02-15  444244
'''

标签:02,Delivered,df,res,filter,订单,2022,pandas
From: https://www.cnblogs.com/rong-z/p/17610672.html

相关文章

  • 4个将Pandas换为交互式表格Python包
    Pandas是我们日常处理表格数据最常用的包,但是对于数据分析来说,Pandas的DataFrame还不够直观,所以今天我们将介绍4个Python包,可以将Pandas的DataFrame转换交互式表格,让我们可以直接在上面进行数据分析的操作。PivottablejsPivottablejs是一个通过IPythonwidgets集成到Python中的J......
  • 【pandas小技巧】--缺失值的列
    在实际应用中,数据集中经常会存在缺失值,也就是某些数据项的值并未填充或者填充不完整。缺失值的存在可能会对后续的数据分析和建模产生影响,因此需要进行处理。pandas提供了多种方法来处理缺失值,例如删除缺失值、填充缺失值等。删除缺失值可能会导致数据量减少,填充缺失值则能够尽量......
  • 如何将 dubbo filter 拦截器原理运用到日志拦截器中?
    业务背景我们希望可以在使用日志拦截器时,定义属于自己的拦截器方法。实现的方式有很多种,我们分别来看一下。拓展阅读java注解结合springaop实现自动输出日志java注解结合springaop实现日志traceId唯一标识java注解结合springaop自动输出日志新增拦截器与过滤器......
  • 老杜 JavaWeb 讲解(十九) ——Filter过滤器
    (十七)Filter过滤器Filter过滤器当前的OA项目存在什么缺陷?DeptServlet、EmpServlet、OrderServlet。每一个Servlet都是处理自己相关的业务。在这些Servlet执行之前都是需要判断用户是否登录了。如果用户登录了,可以继续操作,如果没有登录,需要用户登录。这段判断用户是否登录......
  • Pandas实战反馈
    1,df.info()与df.describe()如果字段太多,使用df.info()返回结果如下图,如果想查看各字段的情况,需写作df.info(verbose=True),verbose冗长的;  2,如果想只取文件的某几列,需按如下形式,将待读取的列名放在两个中括号中,如果只读一列,一个中括号即可。s=pd.read_csv(r'.......
  • Pandas 的Merge函数详解
    在日常工作中,我们可能会从多个数据集中获取数据,并且希望合并两个或多个不同的数据集。这时就可以使用Pandas包中的Merge函数。在本文中,我们将介绍用于合并数据的三个函数merge、merge_ordered、merge_asof https://avoid.overfit.cn/post/9928a4b397734cfcb4aea5a2......
  • SpringBoot学习笔记--过滤器Filter
    一、普通过滤器Filter是Servlet规范中的过滤器,可以处理请求,对请求的参数、属性进行调整。常常在过滤器中处理字符编码。1、创建自定义过滤器类packagecom.cqjtu.vo;importjavax.servlet.*;importjava.io.IOException;//自定义过滤器类publicclassMyFilterimplements......
  • .Net Core ActionFilter
    目录作用实现IActionFilterIAsyncActionFilterActionFilterAttributeDemoCustomAsyncActionFilter.csTestFilterController.cs如何在Actionfilter使用日志Action.csCustomAsyncActionFilter.cs全局注册Program.cs作用在请求AuthorizeFilter->ResourceFilter->ActionFilt......
  • VxeTable 列动态数据过滤 FilterContent
    1、加入组件,并注册:下载官网实例将VxeTable的v4下的位置中的画框的几个都拷到自己的项目中,然后打开filter.tsx,将组件的引用路径调整自己的项目一致,如果是一样就不改了。这一步,要保证filter.tsx中引用到4个vue文件就可以。  2、引入到项目中,保证项目能读到filter.tsx,这样就......
  • pandas之groupby
    数据准备importpandasaspddf=pd.read_excel(r"C:\Users\Desktop\Excel工作表.xlsx")print(df)"""产品分类价格销量0桃子水果1221341李子水果2331232香蕉水果125343饺子生鲜115654馒头生鲜967885包子......