pandas高级操作--数据类型转换和排序

pandas高级操作--数据类型转换

  • 一、数据类型转换
    • 1.1、数据加载时指定数据类型
    • 1.2、astype()类型转换
  • 二、数据排序
    • 2.1、索引排序
    • 2.2 数据排序

一、数据类型转换

1.1、数据加载时指定数据类型

# 对所有字段指定统一类型
df = pd.DataFrame(data, dtype='str')
# 对每个字段分别指定
df = pd.read_excel('team.xlsx', dtype={'team': 'string', 'Q1': 'int32'})

1.2、astype()类型转换

astype()是最常见也是最通用的数据类型转换方法,一般我们使用astype()操作数据类型转换就可以了。

df['Q1'].astype('float32').dtype    # dtype('float32')
df.astype({'Q1':'int32', 'Q2':'float64'}).dtypes
'''
team     object
Q1        int32
Q2      float64
Q3        int64
Q4        int64
'''

以下是一些使用示例:

df.index.astype('int64')    # 索引类型转换
df.astype('int32')    # 所有数据转换为int32

当数据的格式不具备转换为目标类型的条件时,需要先对数据进行处理。例如“92.7%”是一个字符串,要转换为数字,要先去掉百分号:

data.rate.apply(lambda x: x.replace('%', '')).astype('float') / 100

二、数据排序

2.1、索引排序

df.sort_index()实现按索引排序,如需降序,传入ascending=False,如需修改原df,传入inplace=True。
按列索引排序:df.sort_index(axis=1, ascending=False, inplace=True)。
df.reindex()指定自己定义顺序的索引,实现行和列的顺序重新定义:

df = pd.DataFrame({
    'A': [1, 2, 3],
    'B': [4, 5, 6]
}, index=['a', 'b', 'c'])
# 按要求重新指定索引顺序
df.reindex(['c', 'b', 'a'])
# 指定列顺序
df.reindex(['B', 'A'], axis=1)

2.2 数据排序

数据值的排序主要使用sort_values(),Series和DataFrame都支持此方法。

df.Q1.sort_values()
# 可以指定排序方式,下例先按team升序排序,如遇到相同的team再按name降序排序
df.sort_values(by=['team', 'name'], ascending=[True, False])
s.sort_values(inplace=True)    # 修改数据使生效
s.sort_values(na_position='first')    # 空值在前
# df按指定字段排序
df.sort_values(by=['team'])
df.sort_values('team')

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/603373.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

应用FMEA打造零风险供应链的关键因素有哪些?

当下,构建零风险的供应链已成为企业竞争的核心要素。其中,FMEA(故障模式与影响分析)作为一种预防性的质量工具,对于识别和消除潜在风险,优化供应链流程至关重要。本文,天行健六西格玛管理培训公…

sklearn的make_blobs函数

make_blobs是一个用于生成随机数据点的实用函数, from sklearn.datasets import make_blobs X,Y make_blobs(n_samples2000,n_features2,centers12,cluster_std0.05,center_box[-5,5],random_state21)n_samples: 要生成的样本数量。centers: 要生成的簇&#xff0…

linux文本三剑客之awk

目录 1、特点与应用场景 2、awk命令执行流程 3、awk行与列 1)awk取行 2)awk取列 3)awk行与列综合使用 4、awk模式匹配-正则匹配 5、awk模式匹配-范围模式 6、awk模式匹配-特殊模式 7、awk数组* 1) 用途 2)格式对比 8、awk循环与判断 1、特点与应用场景…

App测试基本流程以及注意事项

1 APP测试基本流程 1.1流程图 1.2测试周期 测试周期可按项目的开发周期来确定测试时间,一般测试时间为两三周(即15个工作日),根据项目情况以及版本质量可适当缩短或延长测试时间。 1.3测试资源 测试任务开始前,检查…

Neo4j+LLM+RAG 环境配置报错处理

开发KGLLMRAG程序时遇到以下报错,记录下处理方案: ValueError: Could not use APOC procedures. Please ensure the APOC plugin is installed in Neo4j and that ‘apoc.meta.data()’ is allowed in Neo4j configuration 这个参考文章:link…

【平台开发】MTK6833——cache操作记录

CPU Cache 用的是一种叫 SRAM(Static Random-Access Memory,静态随机存储器) 的芯片。 通常分为L1,L2,L3三层缓存。 CPU 并不会直接和每一种存储器设备直接打交道,而是每一种存储器设备只和它相邻的存储器…

vue2 Avoided redundant navigation to current location

再次点击同一个链接会报错 每次使用 push 方法时带上两个回调函数 this.$router.push({name: item.name}, ()>{}, ()>{}) //第二、第三个参数分别为成功和失败的回调函数重写 Vue-router 原型对象上的 push 函数不行 https://blog.csdn.net/weixin_43615570/article/d…

python入门demo实例-个人信息收集页面实现

dd 今天是python入门day2,先看一下本案例demo的样子吧~ 一个简单得html页面,个人信息收集界面。 案例介绍常用得input 元素 文本框,密码,邮箱。文件上传等实现。 资源下载:python案例demo个人信息收集页面实现资源-…

微信公众号有哪些类型,微信服务号和订阅号有哪些区别

什么是微信公众号? 微信公众号是国内社交媒体平台微信上的公众账号。它们是允许公司发布内容,收集追随者并推广其产品或服务的商业帐户。微信公众号主要有两种类型:订阅账号和服务账号。 微信月活跃用户突破12亿 微信最近达到了平台上的月活…

jmeter利用自身代理录制脚本

在利用代理录制脚本时一定要安装java jdk,不然不能录制的。 没有安装过java jdk安装jmeter后打开时会提示安装jdk,但是mac系统中直接打开提示安装jdk页面后下载的java并不是jdk(windows中没有试验过,笔者所说的基本全部指的是在ma…

区块链 | NFT 水印:Review on Watermarking Techniques(二)

🍍原文:Review on Watermarking Techniques Aiming Authentication of Digital Image Artistic Works Minted as NFTs into Blockchains 1 半脆弱和可逆水印 鲁棒性好的水印技术通常会产生非常低透明度。正如前面所述,由于透明度在处理数字…

智慧公厕:一个让城市公共厕所更智能、更便利的信息化方案

公共厕所一直是城市管理中的一个难题。但是,随着科技的不断发展,智慧公厕正在成为解决这个问题的全新方案。智慧公厕不仅具备传统公厕的基本功能,更是通过信息化技术,实现了空余智能引导、环境监测、资源消耗监测、安全防范管理、…

【数据分析面试】38.更新图书馆数据(Python)

题目 作为一名精通Python的图书管理员,你正在搭建一个更高效地更新图书数据的系统。 编写一个名为 update_availability 的函数,用于更新数据表中特定 book_id 的 availability 值,并返回更新后的数据表。 注意: 如果找不到 book_id&#…

如何缩小图片大小kb?6个压缩图片大小的软件教你快速压缩

如何缩小图片大小kb?6个压缩图片大小的软件教你快速压缩 当需要缩小图片的大小(KB)时,可以利用一系列专门设计的工具和软件来帮助完成这一任务。这些工具可以有效地减小图片的文件大小,而又不会明显降低图片的质量。以…

小麦穗检测数据集VOC+YOLO格式6508张1类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):6508 标注数量(xml文件个数):6508 标注数量(txt文件个数):6508 标注…

MyBatis(XML映射器操作)

文章目录 XML映射器操作(XxxMapper.xml)文件目录1.基本介绍1.优点2.常用顶级元素 2.环境配置1.在原来的父模块下创建一个子模块2.删除没用的两个文件夹3.创建基本目录4.父模块的pom.xml5.jdbc.properties6.mybatis-config.xml7.测试使用MonsterMapperTes…

诛吕政变后,为何会是代王刘恒登上皇位?

公元前179年——这一年对于汉帝国而言是非常特殊的一年。在这一年,汉惠帝的所有儿子被秘密杀害。也就在这一年,远在北疆的诸侯王——代王刘恒在汉朝功臣周勃、丞相陈平等人的支持下在长安登基。 自此,汉朝皇位完成了一次“乾坤大挪移”——汉…

10、算数运算符(以 ‘/’、‘%’、‘++’为主去讲解)(Java超详细版本)

算数运算符 一、算数运算符二、“ / ”的使用三、“ % ”的使用四、“ ”的使用⭐ 一、算数运算符 算数运算符是对数值类型的变量进行运算的,在Java程序中使用的非常多的。 二、“ / ”的使用 1、Java中 “ / ” 的运算结果是省略小数部分的整数,不存…

2024年美国市场亚太游戏品牌数字广告洞察报告

来源:Sensor Tower 美国是全球最大的游戏市场之一,也是亚太游戏品牌出海的重要市场。2023年Q2至2024年Q1,美国市​场广告投放额排名前10的亚太游戏品牌,合计支出 超过7.5亿美元,环比上涨23%。 排名第一的米哈游(miHoY…

DES加密解密算法(简单、易懂、超级详细)

目录 一、基础补充 二、什么是DES算法 (1)对称加密算法 (2)非对称加密算法 (3)对称加密算法的应用 三、DES算法的基础操作步骤 1.明文的加密整体过程 2.F轮函数解析 3.密钥的形成过程 四、AC代码 五、D…
最新文章