Pandas教程16:DataFrame列标题批量重命名+空df数据判断+列名顺序重排

本文主要是介绍Pandas教程16:DataFrame列标题批量重命名+空df数据判断+列名顺序重排,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

---------------pandas数据分析集合---------------
Python教程71:学习Pandas中一维数组Series
Python教程74:Pandas中DataFrame数据创建方法及缺失值与重复值处理
Pandas数据化分析,DataFrame行列索引数据的选取,增加,修改和删除操作
Pandas教程05:DataFrame数据常用属性和方法汇总
Pandas教程06:DataFrame.merge数据的合并处理
Pandas教程07:DataFrame数据的算术运算+逻辑运算+describe()方法+统计函数+自定义函数运算
Pandas教程08:教你DataFrame数据的条件筛选——精选篇
Pandas教程09:使用date_range函数,创建时间序列数据
Pandas教程10:DataFrame数据可视化绘制折线图、柱状图、散点图、饼形图
Pandas教程11:关于pd.DataFrame.shift(1)数据下移的示例用法
Tkinter教程22:DataFrame数据加入到treeview树视图(含横纵滚动条+正反向排序)
Pandas教程12:常用的pd.set_option方法,显示所有行和列+不换行显示等等…
Pandas教程13:groupby函数的分组、聚合、转换和过滤操作
Pandas教程14:DataFrame数据合并(concat+merge+_append+join)的4种方法
Pandas教程15:多个DataFrame数据(保存+追加)为Excel表格数据

1.可以使用rename()函数来重命名DataFrame的列标题。注意,rename()函数默认返回一个新的DataFrame,而不是在原地修改原始DataFrame。如果你想要在原df上修改,可以设置inplace=True参数:

df.rename(columns=column_mapping, inplace=True)

我们首先创建了一个包含三列(‘A’, ‘B’, ‘C’)的DataFrame。然后,我们定义了一个字典column_mapping,其中键是原始列标题,值是新的列标题。我们使用rename()函数和columns参数来应用这个映射,得到一个新的DataFrame df_renamed,其中列标题已经被重命名。

# @Author : 小红牛
# 微信公众号:WdPython
import pandas as pd# 1.创建一个示例DataFrame
data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
df = pd.DataFrame(data)print('1.原始DataFrame数据:'.center(30, '-'))
print(df)# 2.使用字典来重命名列标题
column_mapping = {'A': 'New_A', 'B': 'New_B', 'C': 'New_C'}
df_renamed = df.rename(columns=column_mapping)print('2.重命名后的DataFrame数据:'.center(30, '-'))
print(df_renamed)

输出内容


-------1.原始DataFrame数据:-------A  B  C
0  1  4  7
1  2  5  8
2  3  6  9
-----2.重命名后的DataFrame数据:------New_A  New_B  New_C
0      1      4      7
1      2      5      8
2      3      6      9

2.想把上面的df数据中ABC列顺序,显示为CAB顺序。通过指定列的新顺序[‘C’, ‘A’, ‘B’]来实现列的重新排序。最后,我们打印出重新排序后的DataFrame即可。

# @Author : 小红牛
# 微信公众号:WdPython
import pandas as pd# 1.创建一个示例DataFrame
data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
df = pd.DataFrame(data)print('1.原始DataFrame数据:'.center(30, '-'))
print(df)# 2.方法1:将列顺序从ABC更改为CAB
df_reordered = df[['C', 'A', 'B']]
# 打印重新排序后的DataFrame
print('2.方法1:重新调序后的DataFrame数据:'.center(30, '-'))
print(df_reordered)
# 3.方法2:将列顺序从ABC更改为CAB
# 定义新的列顺序
new_column_order = ['C', 'A', 'B']
# 使用reindex方法调整列顺序
new_df = df.reindex(columns=new_column_order)
print('3.方法2:重新调序后的DataFrame数据:'.center(30, '-'))
print(new_df)

输出内容

------1.原始DataFrame数据:-------A  B  C
0  1  4  7
1  2  5  8
2  3  6  9
---2.方法1:重新调序后的DataFrame数据:---C  A  B
0  7  1  4
1  8  2  5
2  9  3  6
---3.方法2:重新调序后的DataFrame数据:---C  A  B
0  7  1  4
1  8  2  5
2  9  3  6

3.要判断一个DataFrame是否为空数据,您可以检查DataFrame的empty属性。如果DataFrame没有任何行或列,那么它的empty属性将返回True。

# @Author : 小红牛
# 微信公众号:WdPython
import pandas as pd
#  创建一个空的DataFrame数据
empty_df = pd.DataFrame()
print('1.原始空的DataFrame数据:'.center(30, '-'))
print(empty_df)
# 1.检查DataFrame是否为空
if empty_df.empty:print("这是一个空DataFrame数据")
else:print("这不是一个空DataFrame数据")# 2.创建一个非空的DataFrame
data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
non_empty_df = pd.DataFrame(data)
print('2.原始非空的DataFrame数据:'.center(30, '-'))
print(non_empty_df)
# 3.检查DataFrame是否为空
if non_empty_df.empty:print("这是一个空DataFrame数据")
else:print("这不是一个空DataFrame数据")

输出内容:

------1.原始空的DataFrame数据:------
Empty DataFrame
Columns: []
Index: []
这是一个空DataFrame数据
-----2.原始非空的DataFrame数据:------A  B  C
0  1  4  7
1  2  5  8
2  3  6  9
这不是一个空DataFrame数据

除了检查empty属性外,还可以检查DataFrame的行数和列数是否为零,以确定它是否为空:shape属性返回一个元组,其中shape[0]表示行数,shape[1]表示列数。如果两者都为零,那么DataFrame就是空的。

if empty_df.shape[0] == 0 and empty_df.shape[1] == 0:  print("这是一个空DataFrame")

完毕!!感谢您的收看

----------★★历史博文集合★★----------

我的零基础Python教程,Python入门篇 进阶篇 视频教程 Py安装py项目 Python模块 Python爬虫 Json Xpath 正则表达式 Selenium Etree CssGui程序开发 Tkinter Pyqt5 列表元组字典数据可视化 matplotlib 词云图 Pyecharts 海龟画图 Pandas Bug处理 电脑小知识office自动化办公 编程工具 NumPy Pygame

这篇关于Pandas教程16:DataFrame列标题批量重命名+空df数据判断+列名顺序重排的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/801446

相关文章

Java判断多个时间段是否重合的方法小结

《Java判断多个时间段是否重合的方法小结》这篇文章主要为大家详细介绍了Java中判断多个时间段是否重合的方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录判断多个时间段是否有间隔判断时间段集合是否与某时间段重合判断多个时间段是否有间隔实体类内容public class D

Ubuntu固定虚拟机ip地址的方法教程

《Ubuntu固定虚拟机ip地址的方法教程》本文详细介绍了如何在Ubuntu虚拟机中固定IP地址,包括检查和编辑`/etc/apt/sources.list`文件、更新网络配置文件以及使用Networ... 1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安

Python中顺序结构和循环结构示例代码

《Python中顺序结构和循环结构示例代码》:本文主要介绍Python中的条件语句和循环语句,条件语句用于根据条件执行不同的代码块,循环语句用于重复执行一段代码,文章还详细说明了range函数的使... 目录一、条件语句(1)条件语句的定义(2)条件语句的语法(a)单分支 if(b)双分支 if-else(

PyCharm 接入 DeepSeek最新完整教程

《PyCharm接入DeepSeek最新完整教程》文章介绍了DeepSeek-V3模型的性能提升以及如何在PyCharm中接入和使用DeepSeek进行代码开发,本文通过图文并茂的形式给大家介绍的... 目录DeepSeek-V3效果演示创建API Key在PyCharm中下载Continue插件配置Con

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

关于Spring @Bean 相同加载顺序不同结果不同的问题记录

《关于Spring@Bean相同加载顺序不同结果不同的问题记录》本文主要探讨了在Spring5.1.3.RELEASE版本下,当有两个全注解类定义相同类型的Bean时,由于加载顺序不同,最终生成的... 目录问题说明测试输出1测试输出2@Bean注解的BeanDefiChina编程nition加入时机总结问题说明

Spring Boot整合log4j2日志配置的详细教程

《SpringBoot整合log4j2日志配置的详细教程》:本文主要介绍SpringBoot项目中整合Log4j2日志框架的步骤和配置,包括常用日志框架的比较、配置参数介绍、Log4j2配置详解... 目录前言一、常用日志框架二、配置参数介绍1. 日志级别2. 输出形式3. 日志格式3.1 PatternL

Redis的数据过期策略和数据淘汰策略

《Redis的数据过期策略和数据淘汰策略》本文主要介绍了Redis的数据过期策略和数据淘汰策略,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录一、数据过期策略1、惰性删除2、定期删除二、数据淘汰策略1、数据淘汰策略概念2、8种数据淘汰策略

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE