分享几个简单的Pandas数据处理函数

2024-08-31 23:12

本文主要是介绍分享几个简单的Pandas数据处理函数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文末赠免费精品编程资料~~

大家好,今天给大家简单分享几个好用的Pandas数据处理函数。

id,category,sub_category,sales,year,var1,var2,age,score,status,quantity
1,A,B,100,2019,50,70,35,85,active,100
2,B,C,120,2020,60,80,28,90,inactive,200
3,A,C,110,2020,70,90,32,75,active,150
4,D,E,130,2019,80,100,30,80,active,180
5,A,B,140,2021,90,110,29,95,inactive,250

以上模拟数据可以复制后使用pd.read_clipboard(sep=',')读取。

图片

1. melt 和 pivot

melt 场景:假设原始数据集中var1var2代表产品在不同季度的销售额,我们可以将这两列扁平化,方便后续针对季度进行分析或绘制折线图。

# 扁平化季度销售额数据
df_melted = pd.melt(df, id_vars=['id', 'category', 'sub_category', 'year'], value_vars=['var1', 'var2'], var_name='quarter', value_name='quarter_sales')

图片

pivot 场景:完成分析或可视化后,可能需要将扁平化的数据恢复原样。

# 将扁平化的季度销售额数据恢复为宽格式
df_pivoted = df_melted.pivot(index=['id', 'category', 'sub_category', 'year'], columns='quarter', values='quarter_sales')

图片

2. crosstab

crosstab 场景:若我们要分析不同类别产品在子类别中的分布情况,可以创建交叉表。

# 创建 category 和 sub_category 的交叉表并显示频数
cross_tab = pd.crosstab(df['category'], df['sub_category'], margins=True)
cross_tab

图片

3. between

between 场景:在进行数据分析时,我们可能只关心某个年龄段的客户数据,比如筛选出20到40岁的活跃用户及其购买情况。

# 筛选出年龄在20至40岁并且状态为 active 的用户及其销售额
df_filtered = df[(df['age'].between(20, 40)) & (df['status'] == 'active')]# 分析这部分用户的销售额分布
df_filtered[['age', 'sales']].describe()

图片

4. clip

clip 场景:在对用户评分进行分析时,可能存在录入错误导致的过高或过低评分,我们可以对其进行合理限制。

# 限制 score 列的值在0到100之间
df['score'].clip(lower=0, upper=100, inplace=True)# 验证处理效果并计算修正后的评分平均值
print("修正后的评分平均值:", df['score'].mean())

图片

5. replace

replace 场景:在进行用户状态分类时,可能会统一更改某些状态标签以便于后续分析,例如将'inactive'改为'not_active'。

# 将用户状态'inactive'替换为'not_active'
df['status'].replace(to_replace='inactive', value='not_active', inplace=True)# 分别计算新旧标签下用户的状态分布
df['status'].value_counts()

图片

 

文末福利

如果你对Python感兴趣的话,可以试试我整理的这一份全套的Python学习资料,【点击这里】免费领取!

包括:Python激活码+安装包、Python
web开发,Python爬虫,Python数据分析,人工智能、自动化办公等学习教程。带你从零基础系统性的学好Python!

① Python所有方向的学习路线图,清楚各个方向要学什么东西

② 100多节Python课程视频,涵盖必备基础、爬虫和数据分析

③ 100多个Python实战案例,学习不再是只会理论

④ 华为出品独家Python漫画教程,手机也能学习

⑤ 历年互联网企业Python面试真题,复习时非常方便

这篇关于分享几个简单的Pandas数据处理函数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

C++统计函数执行时间的最佳实践

《C++统计函数执行时间的最佳实践》在软件开发过程中,性能分析是优化程序的重要环节,了解函数的执行时间分布对于识别性能瓶颈至关重要,本文将分享一个C++函数执行时间统计工具,希望对大家有所帮助... 目录前言工具特性核心设计1. 数据结构设计2. 单例模式管理器3. RAII自动计时使用方法基本用法高级用法

Python 基于http.server模块实现简单http服务的代码举例

《Python基于http.server模块实现简单http服务的代码举例》Pythonhttp.server模块通过继承BaseHTTPRequestHandler处理HTTP请求,使用Threa... 目录测试环境代码实现相关介绍模块简介类及相关函数简介参考链接测试环境win11专业版python

GO语言中函数命名返回值的使用

《GO语言中函数命名返回值的使用》在Go语言中,函数可以为其返回值指定名称,这被称为命名返回值或命名返回参数,这种特性可以使代码更清晰,特别是在返回多个值时,感兴趣的可以了解一下... 目录基本语法函数命名返回特点代码示例命名特点基本语法func functionName(parameters) (nam

Python Counter 函数使用案例

《PythonCounter函数使用案例》Counter是collections模块中的一个类,专门用于对可迭代对象中的元素进行计数,接下来通过本文给大家介绍PythonCounter函数使用案例... 目录一、Counter函数概述二、基本使用案例(一)列表元素计数(二)字符串字符计数(三)元组计数三、C

Python内存优化的实战技巧分享

《Python内存优化的实战技巧分享》Python作为一门解释型语言,虽然在开发效率上有着显著优势,但在执行效率方面往往被诟病,然而,通过合理的内存优化策略,我们可以让Python程序的运行速度提升3... 目录前言python内存管理机制引用计数机制垃圾回收机制内存泄漏的常见原因1. 循环引用2. 全局变

Python中的filter() 函数的工作原理及应用技巧

《Python中的filter()函数的工作原理及应用技巧》Python的filter()函数用于筛选序列元素,返回迭代器,适合函数式编程,相比列表推导式,内存更优,尤其适用于大数据集,结合lamb... 目录前言一、基本概念基本语法二、使用方式1. 使用 lambda 函数2. 使用普通函数3. 使用 N

MySQL中REPLACE函数与语句举例详解

《MySQL中REPLACE函数与语句举例详解》在MySQL中REPLACE函数是一个用于处理字符串的强大工具,它的主要功能是替换字符串中的某些子字符串,:本文主要介绍MySQL中REPLACE函... 目录一、REPLACE()函数语法:参数说明:功能说明:示例:二、REPLACE INTO语句语法:参数

python中update()函数的用法和一些例子

《python中update()函数的用法和一些例子》update()方法是字典对象的方法,用于将一个字典中的键值对更新到另一个字典中,:本文主要介绍python中update()函数的用法和一些... 目录前言用法注意事项示例示例 1: 使用另一个字典来更新示例 2: 使用可迭代对象来更新示例 3: 使用

python连接sqlite3简单用法完整例子

《python连接sqlite3简单用法完整例子》SQLite3是一个内置的Python模块,可以通过Python的标准库轻松地使用,无需进行额外安装和配置,:本文主要介绍python连接sqli... 目录1. 连接到数据库2. 创建游标对象3. 创建表4. 插入数据5. 查询数据6. 更新数据7. 删除

Jenkins的安装与简单配置过程

《Jenkins的安装与简单配置过程》本文简述Jenkins在CentOS7.3上安装流程,包括Java环境配置、RPM包安装、修改JENKINS_HOME路径及权限、启动服务、插件安装与系统管理设置... 目录www.chinasem.cnJenkins安装访问并配置JenkinsJenkins配置邮件通知