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参数:

python 复制代码
df.rename(columns=column_mapping, inplace=True)

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

python 复制代码
# @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)

输出内容

python 复制代码
-------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即可。

python 复制代码
# @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)

输出内容

python 复制代码
------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。

python 复制代码
# @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数据")

输出内容:

python 复制代码
------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属性返回一个元组,其中shape0表示行数,shape1表示列数。如果两者都为零,那么DataFrame就是空的。

python 复制代码
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

相关推荐
图件制作GIS,储量计算8 小时前
补充耕地质量验收实施细则(试行)
arcgis·数据挖掘·数据分析
小大宇11 小时前
python pandas dataFrame sqlAlchemy案例
python·pandas
ClickHouseDB12 小时前
ClickHouse 开源十年:数据分析领域的中流砥柱
clickhouse·数据分析·开源
Ai_easygo16 小时前
多Agent数据分析报告自动化实战:用CrewAI组支AI团队,丢份数据就出报告(从架构到评估)
人工智能·数据分析·自动化
2601_9627809117 小时前
统计学转数据分析靠谱吗?其实专业优势很明显:别把自己当纯转行
数据挖掘·数据分析
Dylan的码园17 小时前
从Excel到数据库:数据分析全流程与Kettle ETL实战指南
数据库·数据分析·excel
暖和_白开水18 小时前
数据分析agent(九):es_client_manager.py 和分词器ik_max_word问题
elasticsearch·数据分析·c#
XIAOYU67201318 小时前
软件工程转数据分析现实吗?适合哪些学生
数据挖掘·数据分析·软件工程
hrrrrxeeeee18 小时前
选择AI证书时,为什么要看考试内容而不是宣传文案
大数据·人工智能·数据挖掘·数据分析
fanstuck1 天前
1M 上下文能怎么用?我用 Seed Evolving 做了一个招标文件版本差异审查器
服务器·人工智能·数据分析·开源·aigc