问题描述
我在检查以下数据框中的值时遇到问题:
索引 | 打开 | 高 | 信号EMA25M50M | 位置EMA25M50M |
---|---|---|---|---|
2021-03-30 05:35:00 | 0.000059 | 0.000059 | 0 | -1.0 |
2021-03-30 05:40:00 | 0.000059 | 0.000059 | 0 | 0.0 |
2021-03-30 05:45:00 | 0.000059 | 0.000059 | 0 | 0.0 |
如果 PositionEMA25M50M 包含 -1.0,我试图简单地返回 true
我已经尝试过:
if -1.0 in indicator_5min_df.PositionEMA25M50M:
print('true')
else:
print('false')
然而,这每次都返回 false...我认为这与 PositionEMA25M50M 的类型为 float64 有关,但我也尝试过
if np.float64(-1.0) in indicator_5min_df.PositionEMA25M50M:
print('true')
else:
print('false')
这给了我同样的结果......
有什么想法可以解决这个问题吗?
解决方法
您不需要 if
循环。您可以直接将 Series.eq
与 any
一起使用来检查该列是否有任何行具有 -1
:
In [990]: df['PositionEMA25M50M'].eq(-1).any()
Out[990]: True