分享几个简单的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

相关文章

Kotlin 作用域函数apply、let、run、with、also使用指南

《Kotlin作用域函数apply、let、run、with、also使用指南》在Kotlin开发中,作用域函数(ScopeFunctions)是一组能让代码更简洁、更函数式的高阶函数,本文将... 目录一、引言:为什么需要作用域函数?二、作用域函China编程数详解1. apply:对象配置的 “流式构建器”最

Mysql表的简单操作(基本技能)

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看... 目录3.1 创建表 3.2 查看表结构3.3 修改表3.4 实践案例:修改表在数据库中,表的操作主要

Pandas使用SQLite3实战

《Pandas使用SQLite3实战》本文主要介绍了Pandas使用SQLite3实战,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1 环境准备2 从 SQLite3VlfrWQzgt 读取数据到 DataFrame基础用法:读

springboot简单集成Security配置的教程

《springboot简单集成Security配置的教程》:本文主要介绍springboot简单集成Security配置的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录集成Security安全框架引入依赖编写配置类WebSecurityConfig(自定义资源权限规则

Python下载Pandas包的步骤

《Python下载Pandas包的步骤》:本文主要介绍Python下载Pandas包的步骤,在python中安装pandas库,我采取的方法是用PIP的方法在Python目标位置进行安装,本文给大... 目录安装步骤1、首先找到我们安装python的目录2、使用命令行到Python安装目录下3、我们回到Py

Android Kotlin 高阶函数详解及其在协程中的应用小结

《AndroidKotlin高阶函数详解及其在协程中的应用小结》高阶函数是Kotlin中的一个重要特性,它能够将函数作为一等公民(First-ClassCitizen),使得代码更加简洁、灵活和可... 目录1. 引言2. 什么是高阶函数?3. 高阶函数的基础用法3.1 传递函数作为参数3.2 Lambda

如何使用Python实现一个简单的window任务管理器

《如何使用Python实现一个简单的window任务管理器》这篇文章主要为大家详细介绍了如何使用Python实现一个简单的window任务管理器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起... 任务管理器效果图完整代码import tkinter as tkfrom tkinter i

C++中::SHCreateDirectoryEx函数使用方法

《C++中::SHCreateDirectoryEx函数使用方法》::SHCreateDirectoryEx用于创建多级目录,类似于mkdir-p命令,本文主要介绍了C++中::SHCreateDir... 目录1. 函数原型与依赖项2. 基本使用示例示例 1:创建单层目录示例 2:创建多级目录3. 关键注

C++中函数模板与类模板的简单使用及区别介绍

《C++中函数模板与类模板的简单使用及区别介绍》这篇文章介绍了C++中的模板机制,包括函数模板和类模板的概念、语法和实际应用,函数模板通过类型参数实现泛型操作,而类模板允许创建可处理多种数据类型的类,... 目录一、函数模板定义语法真实示例二、类模板三、关键区别四、注意事项 ‌在C++中,模板是实现泛型编程

kotlin的函数forEach示例详解

《kotlin的函数forEach示例详解》在Kotlin中,forEach是一个高阶函数,用于遍历集合中的每个元素并对其执行指定的操作,它的核心特点是简洁、函数式,适用于需要遍历集合且无需返回值的场... 目录一、基本用法1️⃣ 遍历集合2️⃣ 遍历数组3️⃣ 遍历 Map二、与 for 循环的区别三、高