按值范围过滤 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中文网其他相关文章!