Pandas类型转换的多种情况和实现是怎样
Admin 2022-09-15 群英技术资讯 1069 次浏览
本篇内容介绍了“Pandas类型转换的多种情况和实现是怎样”的有关知识,在实际项目的操作过程或是学习过程中,不少人都会遇到这样的问题,接下来就让小编带大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!tips['sex_str'] = tips['sex'].astype(str)


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

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

使用astype转换报错:
tips_sub_miss['total_bill'].astype(float)

使用to_numeric()函数:
直接使用to_numeric()函数还是会报错,添加errors参数
errors可变参数:
ignore 遇到错误跳过 (只是跳过没转类型)coerce 遇到不能转的值强转为NaNpd.to_numeric(tips_sub_miss['total_bill'],errors='ignore')

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

to_numeric向下转型:
downcast参数
integer 和 signed最小的有符号int dtypefloat 最小的float dtypeunsigned 最小的无符号int dtypedowncast参数设置为float之后, total_bill的数据类型由float64变为float32
pd.to_numeric(tips_sub_miss['total_bill'],errors='coerce',downcast='float')

利用pd.Categorical()创建categorical数据,Categorical()常用三个参数
s = pd.Series(pd.Categorical(["a","b","c","d"],categories=['c','b','a']))

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

ordered指定顺序:

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())

| 知识点 | 内容 |
|---|---|
| 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可以用来定义顺序 |
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了Python枚举类定义和使用方法,文章围绕主题的相关资料展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
Pandas 是 Python 语言的一个扩展程序库,能用来数据分析。而且pandas还提供了大量能帮助我们快速便捷地处理数据的函数和方法。我们有时候需要对excel表的列做操作,使用pandas就是能实现我们想要的功能。下面我们就一起来看看使用pandas如何调整列的顺序。
本篇文章给大家带来了关于Python的相关知识,Django是比较经典的Python web框架,最近刚好在项目中用到了Django,所以下面这篇文章主要给大家介绍了关于使用Pycharm创建一个Django项目的超详细图文教程,希望对大家有帮助。
1、collections--基于Python自带的数据类型之上额外增加的几个数据类型fromcollectionsimport*在内置数据类型(dict、list、set、tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter、deque、defaultdict、namedtuple和OrderedDict以及判断什么是可迭
这篇文章主要介绍了在python 脚本下解析json数据,json数据包括JSONObject和JSONArray,下文关于其解析的内容需要的小伙伴可以参考一下
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008