首页 >后端开发 >Python教程 >如何根据多个条件从 Pandas DataFrame 中选择数据?

如何根据多个条件从 Pandas DataFrame 中选择数据?

Linda Hamilton
Linda Hamilton原创
2024-12-08 12:07:09611浏览

How to Select Data from a Pandas DataFrame Based on Multiple Conditions?

从 Pandas.DataFrame 中使用复杂条件进行选择

Pandas 的 DataFrame 提供了强大的数据操作方法和习惯用法。以下是如何根据复杂条件选择值的示例:

问题:

考虑一个包含“A”、“B”和“C”列的 DataFrame。从“A”中选择“B”对应值大于 50、“C”不等于 900 的值。

解决方案:

  1. 创建这数据框:
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)]})
  1. 为条件创建布尔系列:
b_criteria = df["B"] > 50
c_criteria = df["C"] != 900
  1. 使用布尔值组合标准运算符:
selection_criteria = b_criteria & c_criteria
  1. 使用 .loc 来选择:
selected_rows = df.loc[selection_criteria, "A"]

示例:

print(selected_rows)
# Output:
# 2    5000
# 3    8000
# Name: A, dtype: int64

注意:

使用 .loc 可确保对所选数据仅影响副本,保留原始 DataFrame 的完整性。

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

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn