spicy练习题

1. Least squares:

    spicy练习题_第1张图片     

    代码如下:

import numpy as np  
from scipy.linalg import norm  
from scipy.linalg import lstsq  
m=20
n=10
A = np.random.randint(0,10,size=(m,n))  
b = np.random.randint(0,10,size=(m,1))  
x, res, rnk, s = lstsq(A, b)  
residual = norm(b-np.dot(A,x),ord=2)  
print("residual=")  
print(residual)

就是调用库函数,好像没什么能分析的。


    运行结果:

    spicy练习题_第2张图片


2. Optimization :

   


        题目要求函数最大值,scipy自带的fmin函数能够求函数的最小值,而没有求最大值的函数,所以用fmin函数求得-f(x)的最小值,即为f(x)的最大值。


    代码如下:

import numpy as np
from scipy.optimize import minimize  

def func(x):  
    return np.sin(x-2)**2*np.exp((-1)*x**2)*(-1)  
  
ans = minimize(func,0)  
print(-ans.fun)  


    结果如下:

spicy练习题_第3张图片


3.  Pairwise distances :

    spicy练习题_第4张图片

使用scipy库中的函数pdist就能完成题目所要求的内容


  代码如下:

import numpy as np
from scipy.spatial.distance import pdist
m = 3
n = 4
X = np.random.normal(size=(n, m))
Y = pdist(X, 'sqeuclidean')
print(X)
print(Y



   结果如下:

    

    spicy练习题_第5张图片


    

你可能感兴趣的:(spicy练习题)