进行数据处理的6个 Python 代码块分享


Posted in Python onApril 06, 2022

前言:

大家好,今天和大家分享自己总结的6个常用的 Python 数据处理代码,对于经常处理数据的coder最好熟练掌握。

1、选取有空值的行

在观察数据结构时,该方法可以快速定位存在缺失值的行。

df = pd.DataFrame({'A': [0, 1, 2],
                   'B': [0, 1, None],
                   'C': [0, None, 2]})
df[df.isnull().T.any()]

输出:

  A   B   C           A   B   C
0 0 0.0 0.0         1 1 1.0 NaN
1 1 1.0 NaN   -->   2 2 NaN 2.0
2 2 NaN 2.0

2、快速替换列值

实际数据处理经常会根据一些限定条件来替换列中的值。

df = pd.DataFrame({'name':['Python', 'Java', 'C']})

# 第一种方式
df['name'].replace('Java', 'JavaScript', inplace=True)
# 第二种方式
df.loc[df['name'].str.contains('Java'), 'name'] = 'JavaScript'

输出:

     name                   name
0  Python          0      Python
1    Java    --->  1  JavaScript
2       C          2           C

3、对列进行分区

很多情况下,对于数值类型的数据,我们需要分区来计算每个区间数据出现的频率。这时用 pd.cut 就能很好的解决这一问题。

import random

age = random.sample(range(90), 20)
cut_res = pd.cut(age, bins=[0, 18, 35, 60, 90])
# cut_res type:<class 'pandas.core.arrays.categorical.Categorical'>
cut_res.value_counts()

输出:

(0, 18]     6
(18, 35]    1
(35, 60]    6
(60, 90]    7

4、将一列分为多列

在文本数据清洗时,一些列中存在分隔符(‘’, ‘,’, ‘:’)分隔的值,我们只需将该列根据分隔符进行 split 即可。

import pandas as pd

df = pd.DataFrame({'address': ['四川省 成都市',
                               '湖北省 武汉市',
                               '浙江省 杭州市']})
res = df['address'].str.split(' ', expand=True)  
res.columns = ['province', 'city']

输出:

  province city
0 四川省    成都市
1 湖北省    武汉市
2 浙江省    杭州市

expand参数选择是否扩展为 DataFrame,False 则返回 Series

5、中文筛选

同样在清洗过程中,往往会出现一些不需要的中文字段,这时直接用 str.contains 筛选即可。

df = pd.DataFrame({'mobile_phone':
                   ['15928765644',
                    '15567332235',
                    '暂无']})
df[~df['mobile_phone'].str.contains('[\u4e00-\u9fa5]')]

输出:

  mobile_phone         mobile_phone
0 15928765644        0 15928765644
1 15567332235   -->  1 15567332235
2 暂无

6、更改列的位置

有时我们需要调整列的位置,当数据列较少时,可以用下面的方式

df = pd.DataFrame({'name': ['A', 'B', 'C'],
                   'age': [10, 20, 30],
                   'gender': [0, 1, 0]})
df = df[['name', 'gender', 'age']]

输出:

 name age gender    name gender age
0   A  10 0        0   A 0       10
1   B  20 1   -->  1   B 1       20
2   C  30 0        2   C 0       30

如果列较多,那么,一个个列举出来会比较繁琐,推荐下面插入的方式。

col = df['gender']
df.drop('gender', axis=1, inplace=True)
df.insert(1, 'gender', col)

到此这篇关于进行数据处理的6个 Python 代码块分享的文章就介绍到这了,更多相关Python 数据处理内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
用python实现的可以拷贝或剪切一个文件列表中的所有文件
Apr 30 Python
Python中转换角度为弧度的radians()方法
May 18 Python
python xml.etree.ElementTree遍历xml所有节点实例详解
Dec 04 Python
python实现决策树
Dec 21 Python
Django中的Signal代码详解
Feb 05 Python
详解将Django部署到Centos7全攻略
Sep 26 Python
python scipy求解非线性方程的方法(fsolve/root)
Nov 12 Python
pyqt 实现QlineEdit 输入密码显示成圆点的方法
Jun 24 Python
django-allauth入门学习和使用详解
Jul 03 Python
Python中变量的输入输出实例代码详解
Jul 28 Python
python自动循环定时开关机(非重启)测试
Aug 26 Python
Django视图扩展类知识点详解
Oct 25 Python
 分享一个Python 遇到数据库超好用的模块
Apr 06 #Python
Python利用capstone实现反汇编
关于Python中进度条的六个实用技巧分享
如何在Python中妥善使用进度条详解
Apr 05 #Python
Python接口自动化之文件上传/下载接口详解
Apr 05 #Python
关于python3 opencv 图像二值化的问题(cv2.adaptiveThreshold函数)
Python中使用Opencv开发停车位计数器功能
You might like
模仿OSO的论坛(一)
2006/10/09 PHP
php中常用的预定义变量小结
2012/05/09 PHP
php实现基于微信公众平台开发SDK(demo)扩展的方法
2014/12/22 PHP
ecshop后台编辑器替换成ueditor编辑器
2015/03/03 PHP
PHP序列化操作方法分析
2016/09/28 PHP
Ajax+PHP实现的删除数据功能示例
2019/02/12 PHP
javascript 命名规则 变量命名规则
2010/02/25 Javascript
ExtJS GridPanel 根据条件改变字体颜色
2010/03/08 Javascript
jquery动态添加删除一行数据示例
2014/06/12 Javascript
jquery仿QQ登录账号选择下拉框效果
2016/03/22 Javascript
非常棒的jQuery图片轮播效果
2016/04/17 Javascript
js实现多图左右切换功能
2016/08/04 Javascript
基于jQuery制作小图标上下滑动特效
2017/01/18 Javascript
js实现文字选中分享功能
2017/01/25 Javascript
javascript基础知识之html5轮播图实例讲解(44)
2017/02/17 Javascript
angularjs利用directive实现移动端自定义软键盘的示例
2017/09/20 Javascript
详解如何使用webpack打包JS
2018/06/21 Javascript
如何在vue里添加好看的lottie动画
2018/08/02 Javascript
JS实现计算小于非负数n的素数的数量算法示例
2019/02/26 Javascript
layui使用表格渲染获取行数据的例子
2019/09/13 Javascript
Python实现SMTP发送邮件详细教程
2021/03/02 Python
一篇文章彻底搞懂Python中可迭代(Iterable)、迭代器(Iterator)与生成器(Generator)的概念
2019/05/13 Python
Django-xadmin+rule对象级权限的实现方式
2020/03/30 Python
python如何安装下载后的模块
2020/07/03 Python
基于Jquery和Css3代码制作可以缩放的搜索框
2015/11/19 HTML / CSS
Booking.com西班牙:全球酒店预订
2018/03/30 全球购物
Steiff台湾官网:德国金耳釦泰迪熊
2019/12/26 全球购物
成考报名单位证明范本
2014/01/16 职场文书
教师绩效工资方案
2014/02/01 职场文书
外贸专业求职信
2014/03/09 职场文书
2014年招商工作总结
2014/11/22 职场文书
个人合作协议范本
2015/08/06 职场文书
2016七夕情人节广告语
2016/01/28 职场文书
Django使用echarts进行可视化展示的实践
2021/06/10 Python
JavaScript实现队列结构过程
2021/12/06 Javascript
SQL注入篇学习之盲注/宽字节注入
2022/03/03 MySQL