Python dataframe更改数据类型(更改dataframe中的值)
off999 2024-09-13 13:36 61 浏览 0 评论
有时经过预处理的dataframe其数据类型不是我们所需要的,如下图所示
从上图可看出,df里的数据并不是需要的float类型,而是object。通常情况下使用object也没有问题,但如果需要对数据进行数学上的操作时,就会有异常。例如比较df里的最大值:
从上面可以看出异常:环比里最大值为99.9,明显是错误的。这时就需要将这些数据从object类型改为float型。
更改类型的方法有如下几种:
1.使用to_numeric()函数
to_numeric()官方定义如下
pandas.to_numeric(arg, errors='raise', downcast=None)
arg:需要更改的单列或Series对象。
errors:遇到无法转换为数字的类型时的处理方式。方式如下:
raise:遇到无法解析的类型,直接报错
coerce:遇到无法解析的类型,将其内容设置为NaN
ignore:遇到无法解析的类型,将其保持原来的内容不变
downcast:默认是float64或int64类型。如果指定了类型,那么数据在转换时,就转换为指定的类型。
integer或signed:dtype里最小的数据类型:np.int8
unsigned:dtype里最小的无符号数据类型:np.uint8
float:最小的float型:np.float32
先举个简单的例子,再回到开始的dataframe df上去。
s是一个Series,其内容如下
直接使用to_numeric函数,对errors不进行处理的结果如下。可以看出无法解析‘ok’的内容,直接报错。
使用errors参数后结果如下
再回到之前df的例子上来。df是一个dataframe,如对其一列进行转换,代码如下。可以看出数据的类型已经发生了变化。
如果需要对整个df进行处理,可以使用apply函数,如下所示。
2.使用astype()进行强制转换。
通过如下转换,也能将df的内容变为float型。
在使用强制转换时需注意防止将数据转换为错误的形式。
如下所示s1有负数-5。通过强制转换为无符号类型时,就会得到错误的值。
3.使用infer_objects()函数进行转换。
其使用如下:DataFrame.infer_objects(self)
在version 0.21.0中新引入的特性。尝试自动转换为合适的数据类型。这个功能不是很完善,有时无法转换成功。如对df就未转换成想要的float类型。
在一些简单的应用场合,可以转换成功
综合起来,推荐使用to_numeric(),小心使用astype(),可以尝试使用infer_objects()。
通过以上的学习,你是否已经学会如何对dataframe更改数据类型?
有时经过预处理的dataframe其数据类型不是我们所需要的,如下图所示
从上图可看出,df里的数据并不是需要的float类型,而是object。通常情况下使用object也没有问题,但如果需要对数据进行数学上的操作时,就会有异常。例如比较df里的最大值:
从上面可以看出异常:环比里最大值为99.9,明显是错误的。这时就需要将这些数据从object类型改为float型。
更改类型的方法有如下几种:
1.使用to_numeric()函数
to_numeric()官方定义如下
pandas.to_numeric(arg, errors='raise', downcast=None)
arg:需要更改的单列或Series对象。
errors:遇到无法转换为数字的类型时的处理方式。方式如下:
raise:遇到无法解析的类型,直接报错
coerce:遇到无法解析的类型,将其内容设置为NaN
ignore:遇到无法解析的类型,将其保持原来的内容不变
downcast:默认是float64或int64类型。如果指定了类型,那么数据在转换时,就转换为指定的类型。
integer或signed:dtype里最小的数据类型:np.int8
unsigned:dtype里最小的无符号数据类型:np.uint8
float:最小的float型:np.float32
先举个简单的例子,再回到开始的dataframe df上去。
s是一个Series,其内容如下
直接使用to_numeric函数,对errors不进行处理的结果如下。可以看出无法解析'ok'的内容,直接报错。
使用errors参数后结果如下
再回到之前df的例子上来。df是一个dataframe,如对其一列进行转换,代码如下。可以看出数据的类型已经发生了变化。
如果需要对整个df进行处理,可以使用apply函数,如下所示。
2.使用astype()进行强制转换。
通过如下转换,也能将df的内容变为float型。
在使用强制转换时需注意防止将数据转换为错误的形式。
如下所示s1有负数-5。通过强制转换为无符号类型时,就会得到错误的值。
3.使用infer_objects()函数进行转换。
其使用如下:DataFrame.infer_objects(self)
在version 0.21.0中新引入的特性。尝试自动转换为合适的数据类型。这个功能不是很完善,有时无法转换成功。如对df就未转换成想要的float类型。
在一些简单的应用场合,可以转换成功
综合起来,推荐使用to_numeric(),小心使用astype(),可以尝试使用infer_objects()。
通过以上的学习,你是否已经学会如何对dataframe更改数据类型?
相关推荐
- 爱纯净系统官方的网址(爱纯净官网是哪个)
-
备份步骤: 第一步:点击win10纯净版系统桌面左下角的【Windows】按钮,从打开的扩展面板中找到【设置】按钮点击进入。 第二步:打开win10纯净版64位系统中的设置界面中,点击【更新和安全...
- 最新电脑主机配置清单(2021电脑主机主流配置)
-
1.CPU全志a31s80元主板建议联想乐pad160元显示屏7寸分辨率建议在800*480以上约110元电源接口约0.2元wifi模块约20元蓝牙模块约20元硬盘建议金...
- windows7系统界面(win7界面什么样)
-
关于这个问题,要将Win1系统调成Win7界面,您可以尝试以下几个步骤:1.下载并安装一个Win7主题:在网上搜索并下载一个Win7主题,例如“Windows7ThemeforWin10”,...
- 把文件隐藏了怎么显示出来(文件隐藏起来了怎么找)
-
需要显示出来因为有些文件被系统默认设置为隐藏状态,为了查看或编辑这些文件,需要将它们显示出来。如果你使用Windows操作系统,可以在文件资源管理器中点击“查看”选项卡,然后勾选“隐藏项目”复选框,隐...
- mercury路由器wifi密码(mercury路由器wifi密码忘了怎么办)
-
水星路由器宽带密码查看的方法:一、首先登陆原来路由器管理界面,输入路由器账号密码登陆。二、进入路由器管理界面后,点击进入“备份和载入配置”,然后点击“备份配置文件”,然后将备份的配置文件存放在电脑桌...
- microsoft word产品密钥(微软word产品密钥)
-
产品密钥是由一些字符组成的代码,用于激活对应产品。产品密钥是产品授权的证明,它是根据一定的算法(如椭圆算法)等产生的随机数。当用户输入密钥产品会根据其输入的密钥判断是否满足相应的算法,通过这样来判断,...
- 笔记本显卡推荐(笔记本显卡推荐性价比高)
-
1、微星R7850TF2GD5/OC:这款微星显卡是用GCN架构设计的图形核心,里面有1024个sp单元,执行、输出能力都非常的强悍,能完美地将DX11.1特效呈现出来。它还能够支持驳接各种大型...
- hp系统重装win10(hp怎么重装系统win10)
-
答具体解决方法如下准备工作: 1、下载u启动u盘启动盘制作工具 2、下载win10系统镜像并存入u盘启动盘中 3、硬盘模式更改为ahci模式 安装win10系统操作步骤: 1、首先,我们提...
- 惠普笔记本电脑售后服务(惠普笔记本电脑售后服务维修点)
-
惠普笔记本电脑的售后服务包括全国联保、上门维修、24小时服务热线等多种服务。消费者可以通过官网或客户服务热线轻松预约维修服务,享受专业、高效的技术支持。同时,惠普还提供质保服务和延保服务,保障消费者的...
- 住房公积金管理中心官网(广州住房公积金管理中心官网)
-
按照《住房公积金管理条例》有关规定,住房公积金管理中心性质属于事业单位,隶属事业单位编制。使用手机查询住房公积金的方法。微信查询法1、打开微信,点击进入“我”的页面,在这个页面找到钱包;2、点击进入...
- 远程控制系统(路灯远程控制系统)
-
汽车远程控制系统是一种通过移动终端或其他设备远程控制汽车的系统,可以实现远程锁车/解锁、远程启动车辆、远程启动空调、...
- 惠普1136打印机驱动(惠普1136打印机驱动用的是1130吗)
-
原因:1、可能是安装驱动步骤错了,下载驱动的步骤一定要按步骤检查安装。2、可能是驱动程序兼容性问题,或驱动程序损坏,建议使用驱动管理软件安装,这样简单,而且是最新的,兼容性、稳定性好。3、可能是打印机...
- office2013标准版产品密钥(microsoft office2013产品密钥在哪里能找到)
-
win7/win8/win10系统下VisualStudio2013各个版本的密钥:VisualStudioUltimate2013KEY:BWG7X-J98B3-W34RT-33B3R-...
- win7旗舰版电脑非常卡怎么办
-
针对Windows7旗舰版卡顿的情况,可以尝试以下几种方法来解决:1.升级硬件:如果你的电脑配置较低,可以考虑升级一下硬件,例如更换内存条、加装固态硬盘等。2.清理磁盘:清理电脑中不必要的文件、...
- 随身wifi怎么用的使用教程(随身wifi怎么用的使用教程图解)
-
1、将随身wifi插入电脑端,按照提示操作2、首次安装驱动后,随身wifi会随机生成10位默认密码,每台电脑是不相同的。为方便连接,也可手动设置为相同的密码。3、随身WiFi客户端支持3种手机连接方式...
欢迎 你 发表评论:
- 一周热门
-
-
抖音上好看的小姐姐,Python给你都下载了
-
全网最简单易懂!495页Python漫画教程,高清PDF版免费下载
-
Python 3.14 的 UUIDv6/v7/v8 上新,别再用 uuid4 () 啦!
-
飞牛NAS部署TVGate Docker项目,实现内网一键转发、代理、jx
-
python入门到脱坑 输入与输出—str()函数
-
宝塔面板如何添加免费waf防火墙?(宝塔面板开启https)
-
Python三目运算基础与进阶_python三目运算符判断三个变量
-
(新版)Python 分布式爬虫与 JS 逆向进阶实战吾爱分享
-
失业程序员复习python笔记——条件与循环
-
使用 python-fire 快速构建 CLI_如何搭建python项目架构
-
- 最近发表
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python封装 (57)
- python写入txt (66)
- python读取文件夹下所有文件 (59)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)
