Python之pandas:数据类型变换之object、category、bool、int32、int64、float64以及数据类型标准化之详细攻略


三多
三多 2022-09-19 11:18:26 48900
分类专栏: 资讯

Python之pandas:数据类型变换之object、category、bool、int32、int64、float64以及数据类型标准化之详细攻略

目录

数据类型变换之object、category、bool、int32、int64、float64以及数据类型标准化

知识点

1、category类型与object类型

输出结果

实现代码


推荐文章
​​​​​​​Python之pandas:在pandas中创建category类型数据的几种方法之详细攻略
ML之FE:将dataframe中的数据类型进行标准化

数据类型变换之object、category、bool、int32、int64、float64以及数据类型标准化

知识点

在pandas中,如果某个字段下,数据类型不一致导致整个字段类型不相同,可以进行字段类型转换!,在pandas中,进行数据类型转换非常简单,只需要使用astype函数即可!

1、category类型与object类

 object类型(python中)category类型(pandas中特有)
简介

      python是面向对象的语言。在python里面,一切皆为对象

在python中,

  • object类型,一般表示文本类型数据。
  • 有些难以被自动判别的数据类型,或者由不止一种数据类型组成;由于Python一切皆对象,因此都会被处理为最宽泛的"对象"也就是object类型数据。
  • 其实,在数据分析中,有时候会遇到某个字段的数据类型与初始设置的不相符,此时,就要去分析是否是数据不规整造成的。
  • category是 pandas 的一种数据类型,对应着被统计的变量。它实际上是动态枚举的一种形式。如果某个字段的内容中,其可能值的范围是固定且有限的,则category类型数据最为适用;
  • category是由固定的且有限数量的变量组成的。比如:性别、血型、等级等;
  • category类型数据的每一个元素的值,要么是预设好的类型中的某一个,要么是空值(np.nan);
  • 在比较大的数据集中,可以通过使用category类型数据来加快速度
属性具有object类型数据的基本属性。
  • .describe()
  • .cat.categories  
  • .cat.rename_categories  
  • .value_counts()
  • .str 属性  
  • pd.concat
  • union_categoricals   
  • 内存使用量
转换df["col"].astype(‘category‘)

输出结果

实现代码

  1. import pandas as pd
  2. import numpy as np
  3. contents={"name": ['Bob', 'LiSa', 'Mary', 'Alan'],
  4. "ID": [1, 2, ' ', None], 输出 NaN
  5. "age": [np.nan, 28, 38 , '' ], 输出
  6. "age02": [14, 26, 24 , 6],
  7. "born": [pd.NaT, pd.Timestamp("1990-01-01"), pd.Timestamp("1980-01-01"), ''], 输出 NaT
  8. "sex": ['男', '女', '女', None,], 输出 None
  9. "hobbey":['打篮球', '打羽毛球', '打乒乓球', '',], 输出
  10. "money":[200.0, 240.0, 290.0, 300.0], 输出
  11. "weight":[140.5, 120.8, 169.4, 155.6], 输出
  12. "test01":[1, 2.123456789, 3.123456781011126, 4.123456789109999], 输出
  13. "test02":[1, 2.123456789, 3.123456781011126, 4.123456789109999], 输出
  14. }
  15. data_frame = pd.DataFrame(contents)
  16. print('Init-------------------------------')
  17. print(data_frame.dtypes)
  18. print(data_frame)
  19. 将dataframe格式中的数据类型转为object数据类型
  20. data_frame['test02'] = data_frame['test02'].astype('object') 关键字bool,'object'、'category'、str
  21. data_frame['test02'] = data_frame['test02'].apply(str)
  22. data_frame.to_excel("data_demo.xls")
  23. print('after astype-------------------------------')
  24. print(data_frame.dtypes)
  25. print(data_frame)
  26. data_frame_temp=data_frame.copy()
  27. ML之FE:将dataframe中的数据类型进行标准化
  28. print('after Categorical-------------------------------')
  29. data_frame=cols2DfCatAndNum(data_frame)
  30. print(data_frame.dtypes)
文章知识点与官方知识档案匹配,可进一步学习相关知识

网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。

本文链接:https://www.xckfsq.com/news/show.html?id=2021
赞同 0
评论 0 条
三多L1
粉丝 0 发表 11 + 关注 私信
上周热门
如何使用 StarRocks 管理和优化数据湖中的数据?  2935
【软件正版化】软件正版化工作要点  2854
统信UOS试玩黑神话:悟空  2811
信刻光盘安全隔离与信息交换系统  2702
镜舟科技与中启乘数科技达成战略合作,共筑数据服务新生态  1235
grub引导程序无法找到指定设备和分区  1205
点击报名 | 京东2025校招进校行程预告  162
华为全联接大会2024丨软通动力分论坛精彩议程抢先看!  160
2024海洋能源产业融合发展论坛暨博览会同期活动-海洋能源与数字化智能化论坛成功举办  156
华为纯血鸿蒙正式版9月底见!但Mate 70的内情还得接着挖...  154
本周热议
我的信创开放社区兼职赚钱历程 40
今天你签到了吗? 27
信创开放社区邀请他人注册的具体步骤如下 15
如何玩转信创开放社区—从小白进阶到专家 15
方德桌面操作系统 14
我有15积分有什么用? 13
用抖音玩法闯信创开放社区——用平台宣传企业产品服务 13
如何让你先人一步获得悬赏问题信息?(创作者必看) 12
2024中国信创产业发展大会暨中国信息科技创新与应用博览会 9
中央国家机关政府采购中心:应当将CPU、操作系统符合安全可靠测评要求纳入采购需求 8

加入交流群

请使用微信扫一扫!