参见英文答案 > Convert Pandas column containing NaNs to dtype `int`                                    11个

我在转换包含字符串格式(类型:str)和NaN(类型:float64)的2位数字的列时遇到问题.我想以这种方式获得一个新列:NaN,其中有NaN和整数,其中有两个数字的字符串格式.

举个例子:我想从列YearBirth1获取列Yearbirth2,如下所示:

YearBirth1 #numbers here are formatted as strings: type(YearBirth1[0])=str

34 # and NaN are floats: type(YearBirth1[2])=float64.

76

Nan

09

Nan

91

YearBirth2 #numbers here are formatted as integers: type(YearBirth2[0])=int

34 #NaN can remain floats as they were.

76

Nan

9

Nan

91

我试过这个:

csv['YearBirth2'] = (csv['YearBirth1']).astype(int)

正如我所料,我得到了这个错误:

ValueError: cannot convert float NaN to integer

所以我尝试了这个:

csv['YearBirth2'] = (csv['YearBirth1']!=NaN).astype(int)

并得到这个错误:

NameError: name 'NaN' is not defined

最后我试过这个:

csv['YearBirth2'] = (csv['YearBirth1']!='NaN').astype(int)

没有错误,但当我检查列YearBirth2时,这是结果:

YearBirth2:

1

1

1

1

1

1

非常糟糕..我认为这个想法是对的,但是有一个问题让Python能够理解我对NaN的意思..或者我尝试的方法可能是错的..

我也使用了pd.to_numeric()方法,但这种方式我获得了浮点数,而不是整数.

有什么帮助?!

谢谢大家!

P.S:csv是我的DataFrame的名称;

对不起,如果我不太清楚,我正在改进英语!

解决方法:

您可以使用to_numeric,但不可能使用NaN值获取int – 它们始终转换为float:see na type promotions.

df['YearBirth2'] = pd.to_numeric(df.YearBirth1, errors='coerce')

print (df)

YearBirth1 YearBirth2

0 34 34.0

1 76 76.0

2 Nan NaN

3 09 9.0

4 Nan NaN

5 91 91.0

标签:python,pandas,nan,type-conversion

来源: https://codeday.me/bug/20190828/1755321.html

python字符串小数转化整数_python – Pandas将字符串列和NaN(浮点数)转换为整数,保持NaN...相关推荐

  1. python pandas筛选数据_Python pandas从字符串列的数据选择中筛选出nan

    放下它们:nms.dropna(thresh=2) 这将删除至少有两个非-NaN的所有行. 然后您可以删除名称所在的位置NaN:In [87]: nms Out[87]: movie name rat ...

  2. python字符串转换成数字_python如何将字符转换为数字

    python中的字符数字之间的转换函数int(x [,base ]) 将x转换为一个整数 long(x [,base ]) 将x转换为一个长整数 float(x ) 将x转换到一个浮点数 comple ...

  3. 如何在JavaScript中将浮点数转换为整数?

    我想在JavaScript中将浮点数转换为整数. 实际上,我想知道如何同时进行标准转换:截断和舍入. 而且有效,而不是通过转换为字符串和解析. #1楼 按位或运算符 可以使用按位或运算符截断浮点数,它 ...

  4. c++将浮点数转换为整数类型,要求四舍五入

    描述 将浮点数转换为整数类型,要求四舍五入. 输入描述: 随机输入的浮点数 输出描述: 四舍五入之后的整数 思路: 1.将输入的浮点数d强制转换为整形(此时并不能实现四舍五入的转换) 在c中强制类型转 ...

  5. 浮点数转换为整数四舍五入_定义宏以将浮点值四舍五入为C中最接近的整数

    浮点数转换为整数四舍五入 Given a float value and we have to round the value to the nearest integer with the help ...

  6. python字符串只留数字_Python数字和字符串(5/30)

    前言 Life is short,you need Python.本系列是学习Python的心酸历程!(持续更新) 大纲 数值类型及操作 字符串类型及操作 模块time的使用方法 数字迭代器和文本进度 ...

  7. python字符串定义变量名_python基础-变量和字符串

    一.变量 变量的作用: 存储程序运行的结果,变量存储在内存之中,一个变量也就是在内存中开辟了一定的空间 变量可以存储什么? 变量可以存储不同的数据类型,可以为 整数.小数或者字符 变量的定义规范 a. ...

  8. python字符串格式化详解_Python字符串格式化%s%d%f详解

    Python字符串格式化%s%d%f详解 来源:中文源码网    浏览: 次    日期:2018年9月2日 [下载文档:  Python字符串格式化%s%d%f详解.txt ] (友情提示:右键点上 ...

  9. Python——字符串大小写转化

    python字符串得一些用法: 1.输入一个字符串,将其单词首字母由小写变成大写 当所有字母都为大写时,结果也是将首字母变成大写,其余仍然是小写 2.将小写字母转化为大写字母,大写字母仍然转化为大写字 ...

最新文章

  1. HDOJ HDU 1106 排序 ACM 1106 IN HDU
  2. python 有效的括号
  3. computer vision(计算机视觉)方面的期刊会议,学术必备
  4. 计组—缓存Cache
  5. Android 系统(188)---Android开发:ListView、AdapterView、RecyclerView全面解析
  6. 【白皮书分享】2022数据中台交付标准化白皮书-阿里云+埃森哲.pdf(附下载链接)...
  7. Python操作SQLAlchemy之连表操作
  8. IE浏览器起始页通过注册表修改
  9. 手把手教你阅读开源代码【附Python开源项目包】
  10. 华为荣耀magic2手机系统更新鸿蒙,华为荣耀Magic2怎么禁止系统更新功能_如何关闭和禁用系统更新...
  11. 大麻和烟草对表观基因组产生双重影响
  12. 【最后一天报名】数据科学峰会分论坛:供应链、用户增长、电商零售
  13. 海天蚝油《挑战不可能》听风者解人声密码
  14. 家用NAS安装大礼包:PVE+OMV+常用soft详细安装教程
  15. QMI8658 - 姿态传感器学习笔记 - Ⅱ
  16. elm and halogen
  17. matlab音乐合成报告,matlab音乐合成报告.doc
  18. 分布式事物 TCC模式见解
  19. 'internalField' 和'boundaryField'的区别?【翻译】
  20. 缠中说禅学习整理——线段定义及划分(二)

热门文章

  1. visual studio 2008 html中调用外部css文件,的Visual Studio 2008 IDE冻结/崩溃打开.aspx文件中使用CSS时包括...
  2. java layout_java - 以编程方式在LinearLayout中设置边距
  3. python的celery的面试_python 面试
  4. 什么时候用转发什么时候用重定向_验孕棒什么时候用最准确
  5. 360浏览器极速模式_【小技巧】解除浏览器主页以及,锁定主页~
  6. rust 案例_理解Rust的引用与借用
  7. 计算机网络的网络实验有哪几种,计算机网络实验一 网络设备的认识.doc
  8. Zabbix监控httpd服务
  9. 使用ansible批量部署开机启动时为字符界面
  10. Kafka:Kafka核心概念