Scipy Exercise
程序员文章站
2022-07-12 22:14:21
...
10 Scipy
Exercise 10.1: Least squares
Solution
import numpy as np
import scipy.linalg as lig
m = 10
n = 5
A = np.random.random((m, n))
b = np.random.random(m)
x = lig.lstsq(A, b)[0]
norm = np.linalg.norm(np.dot(A, x)-b, ord=2)
print(norm)
Result
0.811680468476
Exercise 10.2: Optimization
Solution
from scipy.optimize import fmin
import numpy as np
import matplotlib.pyplot as plt
def f(x):
return -1 * np.sin(x-2)**2 * np.e**(-1*x**2)
opt = fmin(f, 0)
X = np.linspace(-2, 2, 1000)
plt.plot(X, -f(X))
print('maxmium:', -f(opt)[0])
plt.show()
Result
Optimization terminated successfully.
Current function value: -0.911685
Iterations: 20
Function evaluations: 40
maxmium: 0.911685411707
Exercise 10.3: Pairwise distances
import numpy as np
import scipy.linalg as lig
import scipy.spatial.distance as dis
m = 4
n = 5
X = np.mat(np.random.rand(m, n))
print(X)
cities = dis.pdist(X)
ans = dis.squareform(cities)
print(ans)
Result
[[ 0.80789577 0.71740227 0.81553956 0.7240905 0.71406837]
[ 0.39902099 0.58313777 0.74475987 0.76357866 0.67791779]
[ 0.14056326 0.07844449 0.5960042 0.73173267 0.78303756]
[ 0.57747425 0.00486564 0.06030167 0.92528737 0.44213303]]
[[ 0. 0.43941038 0.95216104 1.1160716 ]
[ 0.43941038 0. 0.59641285 0.95732513]
[ 0.95216104 0.59641285 0. 0.79809873]
上一篇: 模拟退火算法:TSP问题
下一篇: Java1
推荐阅读
-
scipy:csr_matrix稀疏行矩阵
-
浅谈python中scipy.misc.logsumexp函数的运用场景
-
详解利用Python scipy.signal.filtfilt() 实现信号滤波
-
浅谈python中scipy.misc.logsumexp函数的运用场景
-
详解利用Python scipy.signal.filtfilt() 实现信号滤波
-
python安装numpy&安装matplotlib& scipy的教程
-
详解Python中的Numpy、SciPy、MatPlotLib安装与配置
-
Python中利用Scipy包的SIFT方法进行图片识别的实例教程
-
matplotlib 显示两张图片,折线图 和 scipy
-
Python使用scipy模块实现一维卷积运算示例