statsmodels.tools.numdiff.approx_fprime

statsmodels.tools.numdiff.approx_fprime(x, f, epsilon=None, args=(), kwargs={}, centered=False)[source]

函数的梯度,如果函数 f 返回一维数组则为雅可比矩阵

Parameters:
xndarray

求导时的参数

ffunction

f(*((x,)+args), **kwargs) 返回一个值或1维数组

epsilonfloat, optional

步长,如果为 None,则使用最优步长。对于 centered == False 的情况,步长为 EPS**(1/2)*x;对于 centered == True 的情况,步长为 EPS**(1/3)*x。

argstuple

函数 f 的额外参数元组。

kwargsdict

函数 f 的额外关键字参数字典。

centeredbool

是否应返回中心差分。如果不是,则进行前向差分。

Returns:
gradndarray

梯度或雅可比矩阵

注释

如果 f 返回一个一维数组,它返回一个雅可比矩阵。如果 f 返回一个二维数组(例如,每个观测值都有一个值),它返回一个三维数组,其中包含每个观测值的雅可比矩阵,形状为 xk x nobs x xk。即,第一个观测值的雅可比矩阵将是 [:, 0, :]


Last update: Oct 16, 2024