python中astype 存在空值_python-DataFrame.astype()错误参数

python中astype 存在空值_python-DataFrame.astype()错误参数使用列的字典时,astype引发ValueError.我试图将大DF中的稀疏列的类型转换(从float到int).我的问题是NaN值.即使将errors参数设置为’ignore’,使用列的字典时也不会忽略它们.这是一个玩具示例:t=pd.DataFrame([[1.01,2],[3.01,10],[np.NaN,20]])t.astype({0:int},errors=’ignore’)V…

大家好,又见面了,我是你们的朋友全栈君。

使用列的字典时,astype引发ValueError.

我试图将大DF中的稀疏列的类型转换(从float到int).我的问题是NaN值.即使将errors参数设置为’ignore’,使用列的字典时也不会忽略它们.

这是一个玩具示例:

t=pd.DataFrame([[1.01,2],[3.01, 10], [np.NaN,20]])

t.astype({0: int}, errors=’ignore’)

ValueError: Cannot convert non-finite values (NA or inf) to integer

解决方法:

您可以在pandas 0.24.0中使用新的nullable integer dtype.使用astype之前,您首先需要将不完全等于整数的所有浮点数转换为等于整数值(例如,舍入,截断等).

In [1]: import numpy as np; import pandas as pd; pd.__version__

Out[1]: ‘0.24.2’

In [2]: t = pd.DataFrame([[1.01, 2],[3.01, 10], [np.NaN, 20]])

In [3]: t.round().astype(‘Int64’)

Out[3]:

0 1

0 1 2

1 3 10

2 NaN 20

标签:pandas,python

来源: https://codeday.me/bug/20191210/2104644.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/141613.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • pycham2021版本激活码【在线破解激活】

    pycham2021版本激活码【在线破解激活】,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • phpMyAdmin安装教程

    phpMyAdmin安装教程phpmyadmin是一款mysql数据库管理工具,是由php编写的,可以通过互联网控制和操作mysql,通过phpmyadmin可以完全对数据库进行操作,例如建立、复制/删除数据等等。可以管理整个MySQL服务器(需要超级用户),也可以管理单个数据库,为了实现后一种,你将需要合理设置MySQL用户,他只能对允许的数据库进行读/写,那要等到你看过MySQL手册中相关的部分。

  • 打印机设置共享以及共享时无法连接,报错0X00000006解决方法[通俗易懂]

    打印机设置共享以及共享时无法连接,报错0X00000006解决方法[通俗易懂]取消禁用Guest用户,因为别人要访问安装打印机的按个电脑就是以guest账户访问的。 点击【开始】按钮,在【计算机】上右键,选择【管理】,如下图所示: 在弹出的【计算机管理】窗口中找到【Guest】用户 双击【Guest】,打开【Guest属性】窗口,确保【账户已禁用】选项没有被勾选 设置共享目标打印机:点击【开始】按钮,选择【设备和打印机】,如下图: 在…

  • navicat for mysql 15 永久激活码_通用破解码

    navicat for mysql 15 永久激活码_通用破解码,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • 【mysql 清空数据】清除mysql表中数据「建议收藏」

    【mysql 清空数据】清除mysql表中数据「建议收藏」主要命令有两种,一种是delete方式,一种是truncatetable方式。deletefrom表名;truncatetable表名;不带where参数的delete语句可以删除mysql表中所有内容,使用truncatetable也可以清空mysql表中所有内容。效率上truncate比delete快,但truncate删除后不记录mysql日志,不可以恢复数据

  • C#异步调用的方法

    最经公司工作需要调用一个外部的webservice,同时要将传出的数据进行保存,以自己以前的习惯,就打算逐步操作,失败啊,完全没考虑过用户体验效果,在同事指点下,意识到使用异步调用的好处,随便将自己找

    2021年12月24日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号