进行数据处理的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二维码生成库qrcode安装和使用示例
Dec 16 Python
详解Python编程中包的概念与管理
Oct 16 Python
Python找出9个连续的空闲端口
Feb 01 Python
Python的re模块正则表达式操作
May 25 Python
python数据类型_元组、字典常用操作方法(介绍)
May 30 Python
Django中的ajax请求
Oct 19 Python
python中实现控制小数点位数的方法
Jan 24 Python
Python数据类型之Tuple元组实例详解
May 08 Python
python threading和multiprocessing模块基本用法实例分析
Jul 25 Python
python之array赋值技巧分享
Nov 28 Python
Python图像处理之膨胀与腐蚀的操作
Feb 07 Python
python调试工具Birdseye的使用教程
May 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
制作美丽的拉花
2021/03/03 冲泡冲煮
BBS(php &amp; mysql)完整版(一)
2006/10/09 PHP
PHP使用imagick读取PDF生成png缩略图的两种方法
2014/03/20 PHP
Nigma vs Alliance BO5 第五场2.14
2021/03/10 DOTA
JavaScript 对象的属性和方法4种不同的类型
2010/03/19 Javascript
了解jQuery技巧来提高你的代码(个人觉得那个jquery的手册很不错)
2012/02/10 Javascript
基于mootools插件实现遮罩层新手引导
2012/05/24 Javascript
纯Javascript实现Windows 8 Metro风格实现
2013/10/15 Javascript
如何正确使用Nodejs 的 c++ module 链接到 OpenSSL
2014/08/03 NodeJs
基于Bootstrap和jQuery构建前端分页工具实例代码
2016/11/23 Javascript
js 单引号替换成双引号,双引号替换成单引号的实现方法
2017/02/16 Javascript
Js apply方法详解
2017/02/16 Javascript
vue中子组件调用兄弟组件方法
2018/07/06 Javascript
element-ui upload组件多文件上传的示例代码
2018/10/17 Javascript
Vue多组件仓库开发与发布详解
2019/02/28 Javascript
简单了解JavaScript arguement原理及作用
2020/05/28 Javascript
javascript实现贪吃蛇小练习
2020/07/05 Javascript
[02:42]2014DOTA2国际邀请赛 三冰专访:我会打到Ti20
2014/07/13 DOTA
[01:11:21]DOTA2-DPC中国联赛 正赛 Phoenix vs CDEC BO3 第三场 3月7日
2021/03/11 DOTA
Python中使用动态变量名的方法
2014/05/06 Python
selenium+python截图不成功的解决方法
2019/01/30 Python
python实现kmp算法的实例代码
2019/04/03 Python
PyCharm使用之配置SSH Interpreter的方法步骤
2019/12/26 Python
Python Numpy中数据的常用保存与读取方法
2020/04/01 Python
python RSA加密的示例
2020/12/09 Python
深入理解Python变量的数据类型和存储
2021/02/01 Python
美国女性卫生用品公司:Thinx
2017/06/30 全球购物
工业学校毕业生自荐书
2014/01/03 职场文书
你的创业计划书怎样才能打动风投
2014/02/06 职场文书
大学班级学风建设方案
2014/05/01 职场文书
幼儿园大班区域活动总结
2014/07/09 职场文书
民族团结好少年事迹材料
2014/08/19 职场文书
元旦趣味活动方案
2014/08/22 职场文书
银行授权委托书格式
2014/10/10 职场文书
Python办公自动化之教你如何用Python将任意文件转为PDF格式
2021/06/28 Python
Java中CyclicBarrier和CountDownLatch的用法与区别
2021/08/23 Java/Android