我有这个数据:
bprice cprice strike irate tleft
0 26436.90 91.70 26400 10 0.5
1 26423.00 98.90 26400 10 0.5
2 26436.00 90.00 26400 10 0.5
3 26416.35 103.60 26400 10 0.5我正在应用一个函数( http://code.mibian.net/ )
c = mibian.BS([1.4565, 1.45, 1, 30], callPrice=0.0359)在我的数据上,
df2['IV'] = df2.apply(lambda df: mb.BS([df2['bprice'],26400,10,df2['tleft']],
callPrice=df2['cprice']).impliedVolatility, axis=1)但我知道这个错误
TypeError:(“无法将系列转换为浮动‘>”,“发生在索引0’处”)
发布于 2020-02-23 19:00:18
我建议你把这个函数包装起来,然后像这样做-
def my_func(x):
return mb.BS([x['bprice'], 26400, 10 x['tleft']],
callPrice=x['cprice']).impliedVolatility
df2['IV'] = df2.apply(my_func, axis=1)按照您在代码中实现的方式,您实际上调用了来自dataframe的列( mb.BS,pd.Series)。请参阅这里的熊猫应用文档。
https://stackoverflow.com/questions/60365638
复制相似问题