第十三周_Scipy题目

Exercise 10.1: Least squares 

题目描述:

Generate matrix A ∈ R m×n with m > n. Also generate some vector b ∈ Rm. Now find x = argminx||Ax−b||2. Print the norm of the residual.

代码实现:

from scipy.optimize import nnls    
import numpy as np       

m = 20
n = 10   
A = np.random.rand(m, n)    
b = np.random.rand(m)*5        
x, rnorm = nnls(A, b)

print("A = ")
print(A)
print("b = ")
print(b)   
print("rnorm = ")    
print(rnorm)

运行结果:




Exercise 10.2: Optimization

题目描述:

Find the maximum of the function:f(x) = sin2(x−2)e−x2

代码实现:

from scipy.optimize import minimize_scalar
from numpy import * 

def func(x):
	result = -(sin(x-2))**2*power(e,-x**2)
	return result

res = minimize_scalar(func)

print("The maximum = ",end="")
print(-func(res.x))

运行结果:


Exercise 10.3: Pairwise distances 

题目描述:

Let X be a matrix with n rows and m columns. How can you compute the pairwise distances between every two rows?

As an example application, consider n cities, and we are given their coordinates in two columns. Now we want a nice table that tells us for each two cities, how far they are apart.
Again, make sure you make use of Scipy’s functionality instead of writing your own routine.

代码实现:

from scipy.spatial import distance
import numpy as np    

n = 4
m = 2
X = np.random.rand(n, m)  
y = distance.pdist(X)
Z = distance.squareform(y)
print("X = ")
print(X)
print("\nMatrix Z represents the pairwise distances between two rows")
print("Z = ")
print(Z)

运行结果:


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值