首页 >后端开发 >Python教程 >如何根据 Pandas 中的值范围过滤 DataFrame 行?

如何根据 Pandas 中的值范围过滤 DataFrame 行?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-11-14 14:43:02842浏览

How Do I Filter DataFrame Rows Based on a Value Range in Pandas?

按值范围过滤 DataFrame 行

操作数据帧时,通常需要根据特定条件选择行。一种这样的场景是选择指定值范围内的行。虽然使用循环可以实现这一点,但更有效和矢量化的方法是首选。

在给定的代码中:

df = df[99 <= df['closing_price'] <= 101]

由于比较中真值不明确而发生错误。要解决此问题,请使用 Pandas Series 类中的 Between() 方法:

解决方案:

df = df[df['closing_price'].between(99, 101)]

Between() 方法采用两个值作为参数,代表范围的下限和上限。它返回一个布尔系列,对于满足条件的行,返回 True,否则返回 False。然后可以使用该系列来过滤数据帧以仅包含所需的行。

这种矢量化解决方案避免了循环的使用,从而提高了性能和简洁性。而且,阅读和维护起来也更加直观。

以上是如何根据 Pandas 中的值范围过滤 DataFrame 行?的详细内容。更多信息请关注PHP中文网其他相关文章!

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