我正在尝试构建系列x
和数据帧y
的迭代插值。 Dfy
由n
行和m
列组成。我想为数据帧y
的每一行运行插值。
到目前为止,我已经能够通过使用iloc[0:]
成功构建单行的迭代
### SX5E
z=np.linspace(0.2,0.99,200)
z_pd_SX5E=pd.Series(z)
from scipy import interpolate
def f(z_pd_SX5E):
x_SX5E=x
y_SX5E=y.iloc[0,:]
tck_SX5E = interpolate.splrep(x_SX5E, y_SX5E)
return interpolate.splev(z_pd_SX5E, tck_SX5E)
Optimal_trigger_P_SX5E= z_pd_SX5E[f(z_pd_SX5E).argmax(axis=0)]
如何通过每一行y
运行函数? 谢谢 非常感谢
通常,您可以使用.apply
为每一行运行任何函数。所以像这样:
y.apply(lambda val: interpolate.splrep(x,val))
然后,这将返回一个新的系列对象。
https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.apply.html