python数据处理之Pandas类型转换


Posted in Python onApril 28, 2022

转换为字符串类型

tips['sex_str'] = tips['sex'].astype(str)

python数据处理之Pandas类型转换

转换为数值类型

python数据处理之Pandas类型转换

转为数值类型还可以使用to_numeric()函数

DataFrame每一列的数据类型必须相同,当有些数据中有缺失,但不是NaN时(如missing,null等),会使整列数据变成字符串类型而不是数值型,这个时候可以使用to_numeric处理

#创造包含'missing'为缺失值的数据
tips_sub_miss = tips.head(10)
tips_sub_miss.loc[[1,3,5,7],'total_bill'] = 'missing'
tips_sub_miss

python数据处理之Pandas类型转换

自动转换为了字符串类型:

python数据处理之Pandas类型转换

使用astype转换报错:

tips_sub_miss['total_bill'].astype(float)

python数据处理之Pandas类型转换

使用to_numeric()函数:

直接使用to_numeric()函数还是会报错,添加errors参数

errors可变参数:

  • ignore 遇到错误跳过 (只是跳过没转类型)
  • coerce 遇到不能转的值强转为NaN
pd.to_numeric(tips_sub_miss['total_bill'],errors='ignore')

python数据处理之Pandas类型转换

pd.to_numeric(tips_sub_miss['total_bill'],errors='coerce')

python数据处理之Pandas类型转换

to_numeric向下转型:

downcast参数

  • integersigned最小的有符号int dtype
  • float 最小的float dtype
  • unsigned 最小的无符号int dtype

downcast参数设置为float之后, total_bill的数据类型由float64变为float32

pd.to_numeric(tips_sub_miss['total_bill'],errors='coerce',downcast='float')

python数据处理之Pandas类型转换

分类数据(Category)

利用pd.Categorical()创建categorical数据,Categorical()常用三个参数

  • 参1 values,如果values中的值,不在categories参数中,会被NaN代替
  • 参2 categories,指定可能存在的类别数据
  • 参3 ordered, 是否指定顺序
s = pd.Series(pd.Categorical(["a","b","c","d"],categories=['c','b','a']))

python数据处理之Pandas类型转换

分类数据排序会自动根据分类排序:

python数据处理之Pandas类型转换

ordered指定顺序:

python数据处理之Pandas类型转换

from pandas.api.types import CategoricalDtype
# 创建一个分类  ordered  指定顺序
cat = CategoricalDtype(categories=['B','D','A','C'],ordered=True)
# 指定series_cat1转换类型为创建的分类类型
series_cat1 = series_cat.astype(cat)
print(series_cat.sort_values())
print(series_cat1.sort_values())

python数据处理之Pandas类型转换

数据类型小结

知识点 内容
Numpy的特点 1. Numpy是一个高效科学计算库,Pandas的数据计算功能是对Numpy的封装

2. ndarray是Numpy的基本数据结构,Pandas的Series和DataFrame好多函数和属性都与ndarray一样

3. Numpy的计算效率比原生Python效率高很多,并且支持并行计算
Pandas数据类型转换 1. Pandas除了数值型的int 和 float类型外,还有object ,category,bool,datetime类型

2. 可以通过as_type 和 to_numeric 函数进行数据类型转换
Pandas 分类数据类型 1. category类型,可以用来进行排序,并且可以自定义排序顺序

2. CategoricalDtype可以用来定义顺序

 到此这篇关于python数据处理之Pandas类型转换的实现的文章就介绍到这了!


Tags in this post...

Python 相关文章推荐
python使用pyhook监控键盘并实现切换歌曲的功能
Jul 18 Python
Python中shutil模块的常用文件操作函数用法示例
Jul 05 Python
Django自定义分页效果
Jun 27 Python
python多进程实现进程间通信实例
Nov 24 Python
python中的文件打开与关闭操作命令介绍
Apr 26 Python
详解Django中六个常用的自定义装饰器
Jul 04 Python
Python+OpenCV图片局部区域像素值处理详解
Jan 23 Python
详解Python3 基本数据类型
Apr 19 Python
python按键按住不放持续响应的实例代码
Jul 17 Python
在python中利用try..except来代替if..else的用法
Dec 19 Python
python实现飞船大战
Apr 24 Python
Python flask框架实现浏览器点击自定义跳转页面
Jun 04 Python
Python实现将多张图片合成MP4视频并加入背景音乐
Python FuzzyWuzzy实现模糊匹配
Apr 28 #Python
PYTHON基于Pyecharts绘制常见的直角坐标系图表
PYTHON 使用 Pandas 删除某列指定值所在的行
Apr 28 #Python
详解PyTorch模型保存与加载
Apr 28 #Python
Python 图片添加美颜效果
Python 视频画质增强
You might like
中国收音机工业发展史
2021/03/02 无线电
多数据表共用一个页的新闻发布
2006/10/09 PHP
PHP文件注释标记及规范小结
2012/04/01 PHP
header跳转和include包含问题详解
2012/09/08 PHP
php字符比较函数similar_text、strnatcmp与strcasecmp用法分析
2014/11/18 PHP
PHP中使用OpenSSL生成证书及加密解密
2017/02/05 PHP
PHP排序算法之直接插入排序(Straight Insertion Sort)实例分析
2018/04/20 PHP
PHP PDOStatement::errorCode讲解
2019/01/31 PHP
PHP数组对象与Json转换操作实例分析
2019/10/22 PHP
IE6,IE7下js动态加载图片不显示错误
2010/07/17 Javascript
一个基于jQuery的树型插件(OrangeTree)使用介绍
2012/05/03 Javascript
jquery的冒泡事件的阻止与允许(三种实现方法)
2013/02/01 Javascript
javascript中数组的冒泡排序使用示例
2013/12/18 Javascript
js通过location.search来获取页面传来的参数
2014/09/11 Javascript
javascript中for/in循环及使用技巧
2015/09/01 Javascript
解决jQuery使用JSONP时产生的错误
2015/12/02 Javascript
JavaScript位移运算符(无符号) >>> 三个大于号 的使用方法详解
2016/03/31 Javascript
利用Js+Css实现折纸动态导航效果实例源码
2017/01/25 Javascript
Angular2+国际化方案(ngx-translate)的示例代码
2017/08/23 Javascript
微信公众号H5支付接口调用方法
2019/01/10 Javascript
vue实现可视化可拖放的自定义表单的示例代码
2019/03/20 Javascript
vue基于Echarts的拖拽数据可视化功能实现
2020/12/04 Vue.js
Python基于checksum计算文件是否相同的方法
2015/07/09 Python
用python简单实现mysql数据同步到ElasticSearch的教程
2018/05/30 Python
python实现汽车管理系统
2018/11/30 Python
tensorflow 获取checkpoint中的变量列表实例
2020/02/11 Python
详解Python高阶函数
2020/08/15 Python
HTML5实现直播间评论滚动效果的代码
2020/05/27 HTML / CSS
大学生毕业自我鉴定范文
2014/02/03 职场文书
竞选部门副经理的自荐书范文
2014/02/11 职场文书
入党积极分子党小组意见
2015/06/02 职场文书
运动会致辞稿
2015/07/29 职场文书
2016年情人节广告语
2016/01/28 职场文书
《LOL》“克隆大作战”久违归来 幻灵战队皮肤上线
2022/04/03 其他游戏
《金肉人》米特&《航海王》阿鹤声优松岛实因胰脏癌去世 享寿81岁
2022/04/13 日漫
python开发人人对战的五子棋小游戏
2022/05/02 Python