【Pandas】数据处理方法

1.数据拆分

pandas.Series.str.extract()

Series.str.extract(pat, flags=0, expand=True)[source]

extract(提取)

参数

pat: 带分组的正则表达式。

flag: re模块中的标志,例如re.IGNORECASE,修改正则表达式匹配的大小写、空格等

expand: 默认为True,如果为 True,则返回每个捕获组一列的 DataFrame。如果为 False,则如果有一个捕获组则返回 Series/Index,如果有多个捕获组则返回 DataFrame

例子
jobs_df['site'].head()
0      北京 海淀区 西山
1     北京 朝阳区 酒仙桥
2     北京 朝阳区 十里堡
3    北京 石景山区 八宝山
4     北京 朝阳区 三元桥
Name: site, dtype: object

使用extract提取地址关键词,这里的?P<>是为组命名,这样就能自动给定columns

jobs_df['site'].str.extract(r"(?P<city>\S{,})\s{0,3}(?P<part>\S{,})\s{0,3}(?P<street>\S{,})").head()
	city	part	street
0	北京	海淀区	西山
1	北京	朝阳区	酒仙桥
2	北京	朝阳区	十里堡
3	北京	石景山区	八宝山
4	北京	朝阳区	三元桥

2.数据分箱

pandas.cut

pandas.cut(x, bins, right=True, labels=None, retbins=False, precision=3, include_lowest=False, duplicates='raise', ordered=True)
参数

x: 要分箱的一维数组或者序列。

bins: 整数或者序列,定义分段的边界。整数表示等分的段数,序列表示每个分段的具体边界。

right: 判断右边界是否闭合,默认为True。如果right == True, 则 bins = [1, 2, 3, 4] 箱子为 (1,2], (2,3], (3,4]。(这个参数只影响右边界)

labels: 箱子的标签

例子
bj_df.head()姓名	出生年月	            单位名称	           积分分值 年龄
公示编号					
202300001	张浩	1977-02-01	北京首钢股份有限公司	        140.05	45
202300002	冯云	1982-02-01	中国人民解放军空军二十三厂	134.29	40
202300003	王天东	1975-01-01	中建二局第三建筑工程有限公司	133.63	48
202300004	陈军	1976-07-01	中建二局第三建筑工程有限公司	133.29	46
202300005	樊海瑞	1981-06-01	中国民生银行股份有限公司	    132.46	41
bj_df['年龄段'] = 
pd.cut(x=bj_df.年龄,bins=[35,40,45,50,60],right=False,labels=['35-40','40-45','45-50','50-60'])公示编号  	姓名	出生年月	          单位名称	           积分分值 age  box
0	202300001	张浩	1977-02-01	北京首钢股份有限公司	        140.05	45	40-45
1	202300002	冯云	1982-02-01	中国人民解放军空军二十三厂	134.29	40	35-40
2	202300003	王天东	1975-01-01	中建二局第三建筑工程有限公司	133.63	48	45-50
3	202300004	陈军	1976-07-01	中建二局第三建筑工程有限公司	133.29	46	45-50
4	202300005	樊海瑞	1981-06-01	中国民生银行股份有限公司	    132.46	41	40-45# 与bins=4的结果一样
bj_df['box'] = pd.cut(bj_df['age'], bins=4, right = False, labels=['35-40','40-45','45-50','50-60'])
bj_df.head()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/18010.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【重学C语言】十六、联合、枚举、面向对象编程

【重学C语言】十六、联合、枚举、面向对象编程 联合定义联合体使用联合体注意事项枚举枚举的定义为枚举常量指定整数值枚举的使用枚举的打印枚举的优势注意事项面向对象编程1. 结构体(Structs)2. 封装(Encapsulation)3. 继承(Inheritance)

iec61850通信协议是什么

EC 61850是国际电工委员会&#xff08;IEC&#xff09;制定的一个用于电力系统自动化的国际标准。该协议广泛应用于变电站自动化、配电网自动化和智能电网等领域&#xff0c;旨在实现不同设备和系统之间的互操作性和高效通信。本文将详细介绍IEC 61850通信协议的特点、架构、关…

力扣HOT100 - 138. 随机链表的复制

解题思路&#xff1a; class Solution {public Node copyRandomList(Node head) {if(headnull) return null;Node p head;//第一步&#xff0c;在每个原节点后面创建一个新节点//1->1->2->2->3->3while(p!null) {Node newNode new Node(p.val);newNode.next …

Linux “如何添加用户/组和修改用户/组”

我们首先要知道Linux中用户时必须的吗&#xff01;&#xff1f;&#xff1f;&#xff1f; 用户是标识计算机的资源归属的 一、所在位置 我们得知道所有用户保存账号或者密码的文件在哪里&#xff01;&#xff01;&#xff01; /etc/passwd >>>保存系统中全…

【原创 精华】渗透测试-信息收集

一切需要用到的软件均已备份到百度云和阿里云 没有链接的文件请在本地渗透工具文件夹或是 kali 里查看 能用 fofa 的尽量用 包括查 ip&#xff0c;端口扫描&#xff0c;子域名&#xff0c;蜜罐 子域名收集 工具 子域名挖掘机&#xff08;本地文件有&#xff09; 通过爆破…

Ovid医学库文献如何在家查找下载

今天讲的数据库是一个知名医学库——Ovid Ovid隶属于威科集团的健康出版事业集团&#xff0c;与LWW、Adis等公司属于姊妹公司。Ovid数据库在医学外文文献数据库方面占据绝对地位&#xff0c;目前已有包涵人文、科技等多领域数据库300个&#xff0c;其中80多个是生物医学数据库…

CTF解题技能之MISC基础

杂项介绍 Miscellaneous简称MISC&#xff0c;意思是杂项&#xff0c;混杂的意思。 杂项大致有几种类型&#xff1a; 1.隐写 2.压缩包处理 3.流量分析 4.攻击取证 5.其它 本篇主要介绍杂项基础题目的知识点以及解题思路。 0x00 文件类型识别 杂项题目主要是以文件附件作…

Mac免费软件推荐

1. iTerm2 - 功能强大的终端 iTerm2 是一个功能强大且灵活的终端仿真器&#xff08;可替代系统默认终端&#xff09;&#xff0c;适合需要在 macOS 上进行大量终端操作的用户。其丰富的功能和高可定制性使得 iTerm2 成为许多开发者和系统管理员的首选工具。无论是处理多个会话…

如何在vue2中使用tailwind

查看官方文档&#xff0c;不要去看过时的文章&#xff01; 使用官网推荐的第一个安装方法 Installation - Tailwind CSS vue版本&#xff1a;2.6.10 1. 安装tailwind的包 npm install -D tailwindcss npx tailwindcss init 2. tailwind.config.js 文件中的content是你需要…

[自动驾驶技术]-2 感知系统之传感器功能和网络方案

1 传感器功能 自动驾驶系统通常使用多种传感器来实现对车辆周围环境的全面感知&#xff0c;包括摄像头、雷达、激光雷达&#xff08;LiDAR&#xff09;、超声波传感器、惯性测量单元&#xff08;IMU&#xff09;和全球定位系统&#xff08;GPS&#xff09;。 以下是我们对这些…

深度神经网络介绍与实战

一、介绍 深度神经网络(Deep Neural Networks,DNNs)是一种强大的机器学习算法,被广泛应用于计算机视觉、自然语言处理、语音识别等领域。它是人工神经网络的一种扩展,包含多个隐藏层,每一层都由多个神经元组成。 与传统的机器学习算法相比,深度神经网络具有以下特点:…

【ARFoundation自学03】平面追踪可视化效果美化

对已检测到的平面默认的渲染效果显得有些生硬和突兀&#xff0c;有时我们需要更加友好、美观的的平面虚拟界面&#xff0c;这时就需要对已检测到的平面定制个性化的可视方案。为达到更好的视觉效果&#xff0c;处理的思路如下。 视觉效果前后对比&#xff01; &#xff08;本节…

Spring:事务(tx)

1. 简介 spring对jdbc进行封装&#xff0c;简化对数据库的操作 2. HelloWorld 1. 搭建模块 2.加入依赖 <dependencies><!--spring jdbc Spring 持久化层支持jar包--><dependency><groupId>org.springframework</groupId><artifactId>s…

力扣刷题--1528. 重新排列字符串【简单】

题目描述 给你一个字符串 s 和一个 长度相同 的整数数组 indices 。 请你重新排列字符串 s &#xff0c;其中第 i 个字符需要移动到 indices[i] 指示的位置。 返回重新排列后的字符串。 示例 1&#xff1a; 输入&#xff1a;s “codeleet”, indices [4,5,6,7,0,2,1,3] 输…

Java中深拷贝和浅拷贝详解学习

一、什么是深拷贝&#xff1f;什么是浅拷贝&#xff1f; Java中深拷贝和浅拷贝都是与Java中对象的复制有关。Java 中的深拷贝和浅拷贝通常通过实现 Cloneable 接口并重写 clone() 方法来实现。 浅拷贝&#xff1a; 在浅拷贝中&#xff0c;只有对象的基本数据类型属性被复制&…

Clickhouse 嵌套数据类型总结—— Clickhouse 基础篇(三)

文章目录 创建嵌套类型的表插入读取数据在嵌套类型上使用数组函数 在 clickhouse 中存储嵌套类型的关键字是 Nested, 只支持一级嵌套。数据结构类似于在数据结构类似于在表的单元格里面嵌套“一张表格”&#xff0c;如下图所示&#xff1a; 嵌套类型是列存储&#xff0c;本质…

【传知代码】遵循人类指令的高质量图像修复(论文复现)

前言&#xff1a;在数字化时代的浪潮中&#xff0c;图像已成为我们生活中不可或缺的一部分。它们记录着我们的记忆&#xff0c;传递着信息&#xff0c;甚至塑造着我们的认知。然而&#xff0c;正如生活中难以避免的瑕疵&#xff0c;这些数字图像也时常因为各种原因出现损伤、失…

每小时电量的计算sql

计算思路&#xff0c;把每小时的电表最大记录取出来&#xff0c;然后用当前小时的最大值减去上个小时的最大值即可。 使用了MYSQL8窗口函数进行计算。 SELECT b.*,b.epimp - b.lastEmimp ecValue FROM ( SELECT a.deviceId,a.ctime,a.epimp, lag(epimp) over (ORDER BY a.dev…

RangeNet++ 检测3D点云语义算法的详细配置和常见问题

配置环境&#xff1a; Ubuntu18.04 GPU&#xff1a;GeForce MX150 驱动&#xff1a;Ubuntu推荐的nvidia-driver-470 Cuda10.1 cudnn7.6.2 TensorRT 5.1.5.0GCC 7.5.0 运行代码&#xff1a; RangeNet 目录 目录 一、环境配置 1. Ubuntu 18.04 安装NVIDIA驱动 &…

蒲公英旁路组网:总部旁路,分部一级组网方案

总部网关下连接蒲公英路由&#xff0c;分部主机安装蒲公英客户端。总部和分部登录相同账号异地组网。 总部路由地址192.168.1.10&#xff0c;10.168.1.1&#xff0c;172.16.2.5&#xff0c;分部主机地址192.168.43.2&#xff0c;172.16.2.25。 分部主机已经自动添加了路由&am…