进行数据处理的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变量作用范围实例分析
Jul 07 Python
基于python 处理中文路径的终极解决方法
Apr 12 Python
django自带的server 让外网主机访问方法
May 14 Python
python实现简单http服务器功能
Sep 17 Python
pandas求两个表格不相交的集合方法
Dec 08 Python
使用Python横向合并excel文件的实例
Dec 11 Python
对python 通过ssh访问数据库的实例详解
Feb 19 Python
在django admin中添加自定义视图的例子
Jul 26 Python
Python 基于FIR实现Hilbert滤波器求信号包络详解
Feb 26 Python
Python MySQL 日期时间格式化作为参数的操作
Mar 02 Python
解决pip安装的第三方包在PyCharm无法导入的问题
Oct 15 Python
Python Numpy之linspace用法说明
Apr 17 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数组函数序列之array_search()- 按元素值返回键名
2011/11/04 PHP
PHP实现在windows下配置sendmail并通过mail()函数发送邮件的方法
2017/06/20 PHP
PHP基于cookie实现统计在线人数功能示例
2019/01/16 PHP
TP5框架使用QueryList采集框架爬小说操作示例
2020/03/26 PHP
ASP.NET jQuery 实例18 通过使用jQuery validation插件校验DropDownList
2012/02/03 Javascript
js动态移动滚动条至底部示例代码
2014/04/24 Javascript
jquery实现select选中行、列合计示例
2014/04/25 Javascript
再谈javascript原型继承
2014/11/10 Javascript
JavaScript 表单处理实现代码
2015/04/13 Javascript
JScript中的条件注释详解
2015/04/24 Javascript
使用AngularJS编写较为优美的JavaScript代码指南
2015/06/19 Javascript
js实现简洁大方的二级下拉菜单效果代码
2015/09/01 Javascript
javascript轻量级库createjs使用Easel实现拖拽效果
2016/02/19 Javascript
JavaScript实现向select下拉框中添加和删除元素的方法
2017/03/07 Javascript
jQuery EasyUI 选项卡面板tabs的使用实例讲解
2017/12/25 jQuery
JavaScript基础教程之如何实现一个简单的promise
2018/09/11 Javascript
Postman的下载及安装教程详解
2018/10/16 Javascript
vue使用pdfjs显示PDF可复制的实现方法
2018/12/14 Javascript
[53:43]VP vs NewBee Supermajor 胜者组 BO3 第三场 6.5
2018/06/06 DOTA
讲解Python中fileno()方法的使用
2015/05/24 Python
如何使用七牛Python SDK写一个同步脚本及使用教程
2015/08/23 Python
mac下pycharm设置python版本的图文教程
2018/06/13 Python
使用 Python 实现微信群友统计器的思路详解
2018/09/26 Python
Python中*args和**kwargs的区别详解
2019/09/17 Python
一文轻松掌握python语言命名规范规则
2020/06/18 Python
python 爬虫基本使用——统计杭电oj题目正确率并排序
2020/10/26 Python
英国羊皮鞋类领先品牌:Just Sheepskin
2019/12/12 全球购物
毕业生护理专业个人求职信范文
2014/01/04 职场文书
物业工作计划书
2014/01/10 职场文书
销售经理竞聘书
2014/03/31 职场文书
任命书格式
2014/06/05 职场文书
运动员口号
2014/06/09 职场文书
生活部的活动方案
2014/08/19 职场文书
励志演讲稿800字
2014/08/21 职场文书
2015年乡镇食品安全工作总结
2015/10/22 职场文书
Go 语言结构实例分析
2021/07/04 Golang