进行数据处理的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下MySQLdb用法实例分析
Jun 08 Python
Python编程中装饰器的使用示例解析
Jun 20 Python
Python爬虫实例爬取网站搞笑段子
Nov 08 Python
python3获取两个日期之间所有日期,以及比较大小的实例
Apr 08 Python
python简单实现AES加密和解密
Mar 28 Python
python批量修改ssh密码的实现
Aug 08 Python
python如何保证输入键入数字的方法
Aug 23 Python
pytorch实现MNIST手写体识别
Feb 14 Python
Python文字截图识别OCR工具实例解析
Mar 05 Python
Python实现一个论文下载器的过程
Jan 18 Python
Python insert() / append() 用法 Leetcode实战演示
Mar 31 Python
Python中使用tkFileDialog实现文件选择、保存和路径选择
May 20 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
一些使用频率比较高的php函数
2008/10/03 PHP
php下将图片以二进制存入mysql数据库中并显示的实现代码
2010/05/27 PHP
PHP 自定义错误处理函数的使用详解
2013/05/10 PHP
解析在apache里面给php写虚拟目录的详细方法
2013/06/24 PHP
php采集文章中的图片获取替换到本地(实现代码)
2013/07/08 PHP
php输出控制函数和输出函数生成静态页面
2019/06/27 PHP
js拖动div 当鼠标移动时整个div也相应的移动
2013/11/21 Javascript
jQuery学习笔记之jQuery构建函数的7种方法
2014/06/03 Javascript
高性能JavaScript DOM编程(1)
2015/08/11 Javascript
Bootstrap入门书籍之(五)导航条、分页导航
2016/02/17 Javascript
JavaScript中文件上传API详解
2016/04/01 Javascript
js实现一个可以兼容PC端和移动端的div拖动效果实例
2016/12/09 Javascript
jquery拼接ajax 的json和字符串拼接的方法
2017/03/11 Javascript
使用AngularJS编写多选按钮选中时触发指定方法的指令代码详解
2017/07/24 Javascript
js实现canvas保存图片为png格式并下载到本地的方法
2017/08/31 Javascript
微信小程序WebSocket实现聊天对话功能
2018/07/06 Javascript
nodejs 如何手动实现服务器
2018/08/20 NodeJs
微信小程序实现录音时的麦克风动画效果实例
2019/05/18 Javascript
深度了解vue.js中hooks的相关知识
2019/06/14 Javascript
JS使用for in有序获取对象数据
2020/05/19 Javascript
六个窍门助你提高Python运行效率
2015/06/09 Python
深入解析Python中的lambda表达式的用法
2015/08/28 Python
Python 实现随机数详解及实例代码
2017/04/15 Python
解决Django数据库makemigrations有变化但是migrate时未变动问题
2018/05/30 Python
python3格式化字符串 f-string的高级用法(推荐)
2020/03/04 Python
python中执行smtplib失败的处理方法
2020/07/01 Python
CSS3中的clip-path使用攻略
2015/08/03 HTML / CSS
Topman美国官网:英国著名的国际平价时尚男装品牌
2017/12/22 全球购物
Speedo澳大利亚官网:全球领先游泳品牌
2018/02/04 全球购物
诚信考试倡议书
2014/04/15 职场文书
社区矫正工作方案
2014/06/04 职场文书
人事行政专员岗位职责
2014/07/23 职场文书
先进基层党组织事迹材料
2014/12/25 职场文书
毕业设计论文评语
2014/12/31 职场文书
运动会广播稿20字
2015/08/19 职场文书
用python开发一款操作MySQL的小工具
2021/05/12 Python