Error: The truth value of a series is ambiguous. Python & Pandas
Error: The truth value of a series is ambiguous. Python & Pandas
我正在尝试识别当天交易量超过 10,000 的 MSFT 和 GOOG 的所有期权合约,并打印出 symbol.I 的名称,我收到错误 "The truth value of a series is ambiguous.Use a.empty, a.bool(), a.item(), a.any() or 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
问题是条件 (data.Vol > 10000
) returns 一个布尔值数组。 NumPy 发出该错误是因为它不知道您是否要问 "are any of these values > x
?"、"are all of these values > x
?" 等
在这种情况下,您应该使用逻辑索引来获取您感兴趣的行:data[data.Vol > 10000]
。
从那里,您可以获得所有相关符号:data[data.Vol > 10000].index.get_level_values('Symbol')
我正在尝试识别当天交易量超过 10,000 的 MSFT 和 GOOG 的所有期权合约,并打印出 symbol.I 的名称,我收到错误 "The truth value of a series is ambiguous.Use a.empty, a.bool(), a.item(), a.any() or 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
问题是条件 (data.Vol > 10000
) returns 一个布尔值数组。 NumPy 发出该错误是因为它不知道您是否要问 "are any of these values > x
?"、"are all of these values > x
?" 等
在这种情况下,您应该使用逻辑索引来获取您感兴趣的行:data[data.Vol > 10000]
。
从那里,您可以获得所有相关符号:data[data.Vol > 10000].index.get_level_values('Symbol')