数据物理常数
1 2 3 4 5 6 7
| from scipy import constants
print(C.pi)
print(C.g)
|
3.141592653589793
9.80665
积分
1 2 3 4 5 6 7 8 9 10 11
| from scipy import integrate
Y = lambda x: x**2+3 print(integrate.quad(Y, -2, 4))
Y = lambda x: x**2+3 x = np.linspace(-2, 4, 10) y = Y(x) print(integrate.trapz(y, x))
|
(42.0, 4.662936703425657e-13)
42.44444444444444
优化
1 2 3 4 5 6 7
| from scipy import optimize Y = lambda x: x[0]**3 + x[1]**3 + np.cos(x[2]+1) x0 = np.zeros(4) res = optimize.minimize(Y, x0)
print(res.x) print(Y(res.x))
|
[0. 0. 2.14159739 0. ]
-0.9999999999887697
拟合
1 2 3 4 5 6 7 8 9
| from scipy import optimize def func(x, a, b, c): return a * np.exp(-b * x) + c
x = np.linspace(0, 4, 50) y = func(x, 1, 2, 3)
popt, pcov = optimize.curve_fit(func, x, y) popt
|
array([1., 2., 3.])
方程式求解
1 2 3 4 5 6
| from scipy import optimize def func(x): return [x[0]+x[1],x[0]+10]
sol = optimize.root(func, [0, 0]) sol.x
|
array([-10., 10.])
参考:
- 从机器学习到深度学习:基于Scikit-learn与TensorFlow的高效开发实战