数据有三列
第一列为time,第二列为strike,第三列为iv
我对time和strike做meshgrid 均得到shape(5,5)
怎么把iv从一列 对应投影到time和strike张成(5,5)中
如何得到iv对应的(5,5)
然后用1维的time和strike以及二维的iv做曲面图,surf = ax.plot_surface(df['time'],df['strike'], iv)
猜测题主是想将iv列数据从一维变成二维,np.repeat(),或者np.tile(),也许可以解决问题。前者重复元素,后者重复数组。
>>> import numpy as np
>>> iv = np.array([1,2,3,4])
>>> iv
array([1, 2, 3, 4])
>>> np.repeat(iv,5).reshape((4,5))
array([[1, 1, 1, 1, 1],
[2, 2, 2, 2, 2],
[3, 3, 3, 3, 3],
[4, 4, 4, 4, 4]])
>>> np.tile(iv,3).reshape((3,4))
array([[1, 2, 3, 4],
[1, 2, 3, 4],
[1, 2, 3, 4]])
您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632