Scipy
下面为作业文档中Scipy这一章的内容
Exercise 10.1
1. 代码
import numpy as np
import scipy.linalg as sl
m, n = 6, 5
A = np.random.randint(1, 10, size = (m, n))
print("A is:")
print(A)
b = np.random.randint(1, 10, size = (m, 1))
print("b is:")
print(b)
x_ans = sl.lstsq(A, b)[0]
print("x is:")
print(x_ans)
residual = np.dot(A, x_ans) - b
print("The residual is:")
print(np.linalg.norm(residual, 2))
2. 结果截图
Exercise 10.2
1. 代码
import numpy as np
import scipy.optimize as opt
def fun(x):
return (-1)*((np.sin(x-2)**2) * np.exp(-(x**2)))
max_x = opt.fminbound(fun, -1, 1)
print('Maxmum in (-1, 1): ', -fun(max_x))
2. 结果截图
Exercise 10.3
1. 代码
import scipy.spatial
import numpy as np
m, n = 3, 3
X = np.random.randint(1, 10, size = (m, n))
print(X)
distances = scipy.spatial.distance_matrix(X, X)
print(distances)
【注意】这里的函数scipy.spatial.distance_matrix的返回值为一个矩阵,该矩阵的(m,n)个元素是X的第m列与n的第n列之间的距离
2. 结果截图