如何在 Python 中使用 numpy 找到函数的导数?今天就带大家一起来学习。
例如Numpy计算函数
y=x^2+1
让我们说,我想要导数的值在x = 5 …
你有四个选项
-
可以使用
Finite Differences
-
可以使用
Automatic Derivatives
-
可以使用
Symbolic Differentiation
-
可以手
动计算导数。
有限差分不需要外部工具,但容易出现数值错误,如果你处于多变量情况,这可能需要一段时间。
如果你的问题很简单,符号分化是理想的。符号方法现在变得相当健壮。
SymPy
是一个优秀的项目,它与NumPy很好地集成。看看autowrap或lambdify函数。
自动衍生品非常酷,不容易出现数字错误,但需要一些额外的库(google为这个,有几个好的选择)。这是最强大的,但也是最复杂/难以设置的选择。如果你很好地限制自己numpy语法,那么
Theano
可能是一个不错的选择。
这里是一个使用
SymPy
的例子。
<p><span>In [1]: from sympy import *
In [2]: import numpy as np
In [3]: x = Symbol('x')
In [4]: y = x**2 + 1
In [5]: yprime = y.diff(x)
In [6]: yprime
Out[6]: 2⋅x
In [7]: f = lambdify(x, yprime, 'numpy')
In [8]: f(np.ones(5))
Out[8]: [ 2. 2. 2. 2. 2.]<br/></span></p>
以上就是Python中用numpy求导的方法。更多Python学习推荐:
。
(推荐操作系统:windows7系统、Python 3.9.1,DELL G3电脑。)
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python3.5如何返回值12/25
- ♥ 如何将元素添加到python列表11/06
- ♥ python有序Dict的原理01/03
- ♥ 引入python模块的三种方式11/05
- ♥ 普通字符如何在 python 字符串中转义?11/27
- ♥ Python获取GIL锁的过程01/09
内容反馈