pandas series的布尔运算常见错误

2020-11-17  本文已影响0人  打杂算法工程师

pandas.series进行布尔运算经常见,但是经常忘记掉怎么进行计算,因此下定决心整理一下,防止再忘记。

错误示范

s = pd.Series([1,2,3])
s>1 and s<2

此时为报错:
The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

修改方法

s = pd.Series([1,2,3])
(s>1) & (s<2)

注意必须要有括号,否则也会报错!

import numpy as np
import pandas as pd
s = pd.Series([1,2,3])
np.logical_and(s<1, s>1)

不过显然,转为numpy还是比较麻烦的,推荐第一种方法。

上一篇 下一篇

猜你喜欢

热点阅读