掌握 Pandas DataFrame 的复杂过滤技巧

掌握 Pandas DataFrame 的复杂过滤技巧

准备工作

在开始之前,我们需要先安装 Pandas包。你可以使用以下命令进行安装:

pip install pandas

安装好所需的包后,让我们正式进入主题。

Pandas DataFrame 复杂过滤

DataFrame 是 Pandas 中用于存储和操作数据的对象。它非常强大,因为我们可以利用条件、逻辑运算符和 Pandas 的函数对数据进行过滤。

让我们先创建一个简单的 DataFrame 对象:

import pandas as pddf = pd.DataFrame({ 'Name': ['Alice', 'Leah', 'Jessica', 'Kenny', 'Brad'], 'Age': [50, 27, 22, 30, 40], 'Salary': [100000, 154000, 120000, 78000, 88000], 'Occupation': ['Doctor', 'Soldier', 'Doctor', 'Accountant', 'Florist']})

接下来,我们将学习如何对这些示例数据进行过滤。首先,可以根据特定条件进行数据筛选:

df[df['Age'] > 30]

输出:

Name Age Salary Occupation0 Alice 50 100000 Doctor4 Brad 40 88000 Florist

我们也可以结合 And(&)运算符来组合多个条件:

df[(df['Age'] > 25) & (df['Salary'] < 100000)]

输出:

Name Age Salary Occupation3 Kenny 30 78000 Accountant4 Brad 40 88000 Florist

同样地,也可以用 Or(|)运算符组合条件:

df[(df['Salary'] < 100000) | (df['Occupation'] == 'Soldier')]

输出:

Name Age Salary Occupation1 Leah 27 154000 Soldier3 Kenny 30 78000 Accountant4 Brad 40 88000 Florist

此外,我们还可以利用字符串函数进行数据过滤。例如,筛选出某列包含特定值的数据:

df[df['Occupation'].str.contains('Sol')]

输出:

Name Age Salary Occupation1 Leah 27 154000 Soldier

如果你需要按照特定字符串值进行过滤,可以使用以下方法:

df[df['Occupation'].isin(['Doctor', 'Florist'])]

输出:

Name Age Salary Occupation0 Alice 50 100000 Doctor2 Jessica 22 120000 Doctor4 Brad 40 88000 Florist

还可以通过 lambda 函数对数据进行过滤:

df[df['Name'].apply(lambda x: len(x) > 5)]

输出:

Name Age Salary Occupation2 Jessica 22 120000 Doctor

如果你想简化操作,可以使用 query 方法来过滤数据:

df.query('Age < 30 and Salary > 100000')

输出:

Name Age Salary Occupation1 Leah 27 154000 Soldier2 Jessica 22 120000 Doctor

最后,我们可以将前面学到的各种过滤条件进行组合:

df[(df['Age'] > 30) & ( (df['Salary'] > 60000) | (df['Occupation'].str.contains('Doc')))]

输出:

Name Age Salary Occupation0 Alice 50 100000 Doctor4 Brad 40 88000 Florist

掌握这些过滤函数,将大大提升你的数据分析能力。

特别声明:[掌握 Pandas DataFrame 的复杂过滤技巧] 该文观点仅代表作者本人,今日霍州系信息发布平台,霍州网仅提供信息存储空间服务。

猜你喜欢

海森 EL3 便携式 EL 检测仪:光伏板 EL 检测的灵活小能手(海森配件)

海森 EL3 便携式 EL 检测仪作为光伏板 EL 检测的灵活小能手,以其灵活的特性适应了光伏板检测中的各种需求,让检测工作更加便捷高效。首先,在检测角度的灵活性上,该设备表现出色,光伏板的安装角度多样,有…

海森 EL3 便携式 EL 检测仪:光伏板 EL 检测的灵活小能手(海森配件)

向人工智能公司靠拢!三星电子据称已成立AI项目工作组InnoX(向人工智能公司提出建议)

财联社8月4日讯(编辑周子意)据业内人士周一(8月4日)透露,韩国三星电子成立了一个新的人工智能项目特别工作组,这是三星电子向人工智能公司转型的一项重要举措。 据业内人士透露,三星电子的设备体验(DX)部门…

向人工智能公司靠拢!三星电子据称已成立AI项目工作组InnoX(向人工智能公司提出建议)

上周末北美票房榜:《神奇 4 侠》居首 新片表现各有千秋(北美票房2020上半年)

《神奇 4 侠》第二个周末票房大跌 66%,仅 4000 万美元,低于商业大片 50% 左右的优秀跌幅标准,不及《超人》等片。。 今年 7月票房不及去年,且暑期档恐无开画超 1.5 亿、北美总票房超 5 …

上周末北美票房榜:《神奇 4 侠》居首 新片表现各有千秋(北美票房2020上半年)

明明自己是半吊子,还敢装成资深导师,这5位明星哪来的勇气?(明明是人)

毛不易作为参赛选手演唱了像我这样的人就连不懂音乐的人都能听出来他非常有才华!别具一格的点评风格吸引了很多人,也让他在大众心中留下了深刻的印象。 萨顶顶虽说是作为参赛选手来参加的节目录制,但是她在圈内也属于…

明明自己是半吊子,还敢装成资深导师,这5位明星哪来的勇气?(明明是人)

好莱坞明星私藏保养品TOP5:NMN抗衰老黑科技荣登榜首(好莱坞明星生活)

但相比小石丸的10倍提纯技术,瑞维拓仍采用5倍提纯工艺,在产品浓度和吸收效率方面存在一定差距。在用户体验和包装设计上用心良苦,但高活NMN的技术路线相对传统,其6倍提纯工艺虽然超过了一些品牌,但与小石丸的10…

好莱坞明星私藏保养品TOP5:NMN抗衰老黑科技荣登榜首(好莱坞明星生活)