百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

更有效地使用 Python Pandas 的 4 个技巧

off999 2025-07-07 22:19 3 浏览 0 评论


一个简单而实用的指南


照片由simon sun在Unsplash上拍摄

Pandas 是一个用于数据分析和操作任务的非常实用且功能强大的库。自 2019 年以来,我一直在使用 Pandas,它始终能够为我的任务提供解决方案。

在使用 Pandas 大约 3 年后,我意识到一开始我并没有非常有效地使用它。在某些情况下,我解决特定问题的方法比最佳解决方案要长。我也没有非常有效和准确地使用某些功能。

我仍然能够完成任务。然而,当我发现更优化和实用的做事方式时,我的整个工作流程都得到了改进。

在本文中,我将分享 4 个技巧,帮助您充分利用 Pandas。让我们从创建一个示例 DataFrame 开始,以在示例中使用。

将 numpy 导入为 np
将 pandas 导入为 pddf = pd.DataFrame({ 
    "团队": ["A","A","B","B","B",np.nan,np.nan,"C"], 
    "玩家": [ 
       “约翰”、“简”、“阿什莉”、“艾米丽”、“马特”、“珍妮”、“麦克斯”、“亚历克斯” 
    ]、
    “得分”:[81、84、np.nan、91、np。南, 86, 94, 89] 
})df

df(作者图片)

我们有一个包含 3 列和 8 行的 DataFrame,并且在 team 和 score 列中存在一些缺失值。

1. 带空值的 value_counts 函数

value_counts 函数是 Pandas 最常用的函数之一。它计算列中每个不同值的出现次数。默认情况下,它不考虑空值(即缺失值)。这可能会产生误导,尤其是在我们处理大文件时。

df["团队"].value_counts()# 输出
B 3 
A 2 
C 1
名称:团队,数据类型:int64

team 列中有空值,但我们在 value_counts 函数的输出中看不到它们。我们可以使用下面的 dropna 参数使其计算空值。

df["团队"].value_counts(dropna=False)# 输出
B 3 
A 2 
NaN 2 
C 1
名称:团队,dtype:int64

现在输出更准确。

2. 使用其他列填充缺失值

现实生活中的数据集通常包含不能总是被忽略的缺失值。我们需要妥善处理它们以产生准确可靠的输出。

我们有不同的选项来填充缺失值。最优的取决于数据和任务的特性。例如,我们可以使用列平均值来填充缺失值。处理时间序列数据时,上一个或下一个值可能是更好的选择。

另一种选择是使用其他列中的数据。在我们的 DataFrame 中,我们可以使用 player 列填充 team 列中的缺失值。我将向您展示完成这项任务的两种不同技术。第一个是使用 loc 方法手动选择缺失值。

df.loc[df["Team"].isna()==True, "Team"] = df["Player"]

左侧选择团队列中的缺失值。右侧将玩家列中的值分配给这些值。

第二种是直接使用fillna函数。

df["Team"].fillna(df["Player"], inplace=True)df

df(作者图片)

3. 使用 Python 字典

字典是 Python 的内置数据结构。它在数据分析和操作中的各种任务中派上用场。我们还可以将它们与 Pandas 函数一起使用,以使它们更有用。

例如,replace 函数用于替换列或 DataFrame 中的值。考虑我们有一个包含每个球员的球队数据的球队字典。

团队= { 
    “约翰”:“A”,
    “简”:“A”,
    “阿什利”:“B”,
    “艾米丽”:“B”,
    “马特”:“B”,
    “珍妮”:“C” ,
    “最大”:“C”,
    “亚历克斯”:“C” 
}

我们可以使用这个字典将球队列中的球员姓名替换为他们的球队名称。

df["团队"] = df["团队"].replace(团队)df

df(作者图片)

我们也可以按如下方式执行此操作:

df["Team"] = df["Team"].replace("Jenny","C") 
df["Team"] = df["Team"].replace("Max","C")

这绝对不如使用字典方便。此外,我们可能有几个值要替换。在这种情况下,无需编写几行代码,而是使用字典只需一行即可完成任务。

您可以使用 Python 字典增强其他一些 Pandas 函数。这是我写的关于这个主题的更详细的文章。

4. 缺失值的整数列

分数列中的值是整数,但它们显示为浮点数。原因是此列中的缺失值。

整数的默认数据类型不支持空值,因此数据类型向上转换为浮点数。如果将这些值表示为整数很重要,则可以使用可为空的整数数据类型。

df["Score"] = df["Score"].astype(pd.Int64Dtype())df

df(作者图片)

现在分数显示为整数。

数据清理和操作是任何面向数据的产品的重要组成部分。Pandas 提供了多种功能和方法来加快和简化您的工作流程。为了充分利用 Pandas,您应该尝试发掘任何功能的全部潜力。

您可以成为Medium 会员,以解锁对我的作品以及 Medium 其他内容的完全访问权限。如果您已经是,如果您想在我发布新文章时收到电子邮件,请不要忘记订阅。

感谢您的阅读。如果您有任何反馈,请告诉我。

相关推荐

用Python编制生成4位数字字母混合验证码

我们登录一些网站、APP的时候经常会有验证码,这个为了防止有人不停的去试探密码,还有发送短信验证之前,输入验证码就可以减少误点,错误操作等等。可以提高安全性,我们可以生成数字,也可以生成字母,也可...

Python电子发票管理工具4:前后端业务逻辑实现

用一系列文章介绍如何用python写一个发票管理小工具。在前面的文章中前端页面和后端框架已经实现,本文将介绍功能实现的代码。数据库操作使用sqlalchemy操作sqlite数据库。sqlalchem...

【代码抠图】4行Python代码帮你消除图片背景

在修图工具满天飞的年代其实仍然还有很多人不会扣图(比如我),在很多需要去除某些照片上面的背景的时候就会很难受,所以今天就给不会扣图的小伙伴们来带一个简单的代码扣图教程,只需要4行代码,不用再多了。准备...

Python 3.14 的 UUIDv6/v7/v8 上新,别再用 uuid4 () 啦!

Python3.14重磅更新!UUIDv6/v7/v8强势来袭,别再用uuid4()啦!为什么说UUID升级是2025年Python开发者的必学技能?在当今互联网应用中,UU...

殊途同归 python 第 4 节:有趣的键值对(字典)

字典数据的突出特点就是“键”和“值”,前文已经简单介绍过,本文来聊聊关于字典的几个高级玩法。1.函数打包后,通过键来调用globalf1,f2a={"k1":f1,"k2...

更有效地使用 Python Pandas 的 4 个技巧

一个简单而实用的指南照片由simonsun在Unsplash上拍摄Pandas是一个用于数据分析和操作任务的非常实用且功能强大的库。自2019年以来,我一直在使用Pandas,它始终能够为我...

4.python学习笔记-集合(python里面集合)

1.关于集合集合是一类元素无序不重复的数据结构,常用场景是元素去重和集合运算。python可以使用大括号{}或者set()函数创建集合,如果创建一个空集合必须用set()而不是{},因为{}是用来表示...

python生成4种UUID(python随机生成uuid)

总结了一份python生成4种UUID的代码:UUID用4种uuid生成方法:uuid1:基于时间戳由MAC地址、当前时间戳、随机数字。保证全球范围内的唯一性。但是由于MAC地址使用会带来安全问题...

你不知道的4种方法:python方法绘制扇形

1说明:=====1.1是问答中的我的一个回答。1.1因为问答中没有代码块的,所以我改为这里写文章,然后链接过去。1.24种方法:turtle法、OpenCV法、pygame法和matplot...

30天学会Python编程:4. Python运算符与表达式

4.1运算符概述4.1.1运算符分类Python运算符可分为以下几大类:4.1.2运算符优先级表4-1Python运算符优先级(从高到低)运算符描述示例**指数2**3→8~+-按位取...

这3个高级Python函数,不能再被你忽略了

全文共1657字,预计学习时长3分钟Python其实也可以带来很多乐趣。重新审视一些一开始并不被人们熟知的内置函数并没有想象中那么难,但为什么要这么做呢?今天,本文就来仔细分析3个在日常工作中或多或少...

beautifulSoup4,一个超实用的python库

一.前言我们在学习python爬虫的时候,数据提取是一个常见的任务。我们一般使用正则表达式,lxml等提取我们需要的数据,今天我们介绍一个新的库beautifulSoup4,使用它您可以从HTML和...

AI指导:打造第一个Python应用(4)(python ai开发)

眼瞅着迈过几个里程碑,与目标越来越近。尽管过程中照旧因返工而心焦,而欣喜与急躁比例,是喜悦运大于焦虑。从初次熟悉智能大模型,尝试编程起步,不定期进行复盘反思,这是小助手指导编程的第四篇。复盘以为记。需...

wxPython 4.2.0终于发布了(wxpython安装教程)

  wxPython是Python语言的跨平台GUI工具包。使用wxPython,软件开发人员可以为他们的Python应用程序创建真正的本地用户界面,这些应用程序在Windows、Ma...

《Python学习手册(第4版)》PDF开放下载,建议收藏

书籍简介如果你想动手编写高效、高质量并且很容易与其他语言和工具集成的代码,本书将快速地帮助你利用Python提高效率。本书基于Python专家的流程培训课程编写,内容通俗易懂。本书包含很多注释的例子和...

取消回复欢迎 发表评论: