首页 > 后端开发 > Python教程 > 如何根据 Pandas 中的多个标准选择 DataFrame 值?

如何根据 Pandas 中的多个标准选择 DataFrame 值?

Patricia Arquette
发布: 2024-12-05 13:09:10
原创
897 人浏览过

How to Select DataFrame Values Based on Multiple Criteria in Pandas?

从 pandas.DataFrame 中选择复杂的条件

基于多个条件从 DataFrame 中选择特定值

让我们假设我们有一个简单的 DataFrame,例如以下:

import pandas as pd
from random import randint

df = pd.DataFrame({'A': [randint(1, 9) for x in range(10)],
                   'B': [randint(1, 9)*10 for x in range(10)],
                   'C': [randint(1, 9)*100 for x in range(10)]})
登录后复制

我们的目标是从“A”列中选择值满足“B”和“C”列中相应值的特定标准。

使用布尔索引的方法

为了实现这一点,我们可以利用布尔索引。首先,我们为每个条件创建布尔系列对象:

df["B"] > 50
(df["B"] > 50) & (df["C"] != 900)
登录后复制

这些布尔系列表示满足各自条件的行。然后,我们可以使用这些 Series 作为索引来选择所需的值:

df["A"][df["B"] > 50]
df["A"][(df["B"] > 50) & (df["C"] != 900)]
登录后复制

使用 .loc 的方法

我们还可以使用 .loc 属性来实现更高效的索引。 .loc 允许我们使用单个语句指定要检索的行和列:

df.loc[(df["B"] > 50) & (df["C"] != 900), "A"]
登录后复制

结论

两种方法都可以根据复杂的条件从 DataFrame 中有效地选择值。选择使用布尔索引还是.loc取决于个人喜好和代码可读性。

以上是如何根据 Pandas 中的多个标准选择 DataFrame 值?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板