如何解决检查值是否在 Pandas 数据框列中
我在检查以下数据框中的值时遇到问题:
索引 | 打开 | 高 | 信号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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。