我试图确定当天拥有超过10,000张量的MSFT和GOOG的所有期权合约,并打印出该符号的名称。我收到了错误"真值一系列是不明确的。使用a.empty,a.bool(),a.item(),a.any()或a.all()。"错误在第13行。非常感谢任何帮助。
from pandas_datareader.data import Options
import pandas as pd
from pandas import DataFrame
import datetime
tickers = ['GOOG','MSFT']
for i in tickers:
option = Options(i,'yahoo')
data = option.get_all_data()
if data.Vol > 10000:
print data.Symbol
else:
pass
答案 0 :(得分:1)
问题是条件(data.Vol > 10000
)返回一个布尔值数组。 NumPy会发出错误,因为它无法知道您是否要问{34}这些值是> x
?","是所有这些值{{1} }?"等等
在这种情况下,您应该使用逻辑索引来获取您感兴趣的行:> x
。
从那里,您可以获得所有相关符号:data[data.Vol > 10000]