显然缺少 scipy 功能

问题描述

当我运行下面的脚本(取自 scipy 文档)时,我得到了 错误'属性错误:模块'scipy.integrate'没有属性'cumulative_trapezoid' 当我运行 dir (integrate) 时,函数列表中没有提到“cumulative_trapezoid”

from scipy import integrate
import matplotlib.pyplot as plt
x = np.linspace(-2,2,num=20)
y = x
y_int = integrate.cumulative_trapezoid(y,x,initial=0)
plt.plot(x,y_int,'ro',y[0] + 0.5 * x**2,'b-')
plt.show()

解决方法

cumulative_trapezoid 在 1.6 版中添加到 SciPy。您可以使用 import scipy; print(scipy.__version__) 检查您的版本。在旧版本的 SciPy 中,该函数称为 cumtrapz