SciPy常用函数简介

本文简要介绍了SciPy库中的几个重要函数,包括scipy.interpolate的内插功能,scipy.spatial.transform.Rotation的三维旋转操作,以及scipy.optimize.dual_annealing的退火优化算法。此外,还提到了scipy.spatial.distance.cdist用于计算两组数据间距离的用途。文章旨在帮助读者更好地理解和应用这些函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里介绍几个函数,由于近来需要用到,网上找了一下,只有英文文档,很少有中文文档,在这里简单介绍一下,有兴趣可以浏览,仅当参考,希望能提升大家的学习速率。

1、scipy.interpolate 内插

2、scipy.spatial.transform.Rotation 三维旋转

3、scipy.optimize.dual_annealing 退火优化方法

模拟退火算法常用于组合优化问题,当有多个参数,参数的变化方向又不确定时,常使用这类方法解决。

函数签名如下:(源码地址:https://github.com/scipy/scipy/blob/v1.3.0/scipy/optimize/_dual_annealing.py#L428-L689

scipy.optimize.dual_annealing(func, bounds, args=(), maxiter=1000, local_search_options={}, initial_temp=5230.0, restart_temp_ratio=2e-05, visit=2.62, accept=-5.0, maxfun=10000000.0, seed=None, no_local_search=False, callback=None, x0=None)

参数说明:

func: 

目标函数,或者说打分函数,即优化的目的是使得func的值最小,该函数在定义的时候有一定的要求,func函数必须是以下形式:

def func(x,*args)

其中x表示的是一个一维向量,是所有参数组成的向量,打分函数func需要根据这个参数向量来打分,*args是一个可变参数,是完成该函数功能所需要的其他参数,这些参数对分数无影响。

bounds:

参数的取值范围,是以列表的形式给出,列表中包含元组,每个元组表示每个参数的取值范围,有顺序要求。

args:

对应目标函数中的可变参数,以元组或者列表的形式传递。

4、scipy.spatial.distance.cdist

scipy.spatial.distance.cdist(XA, XB, metric='euclidean', *args, **kwargs)

计算两个输入集合的每对之间的距离。

参数说明:

XA:ndarray

XB:ndarray

metric:str or callable, optional(默认为'euclidean'即欧拉距离)

要使用的距离度量。如果是字符串,距离函数可以是‘braycurtis’, ‘canberra’, ‘chebyshev’, ‘cityblock’, ‘correlation’, ‘cosine’, ‘dice’, ‘euclidean’, ‘hamming’, ‘jaccard’, ‘jensenshannon’, ‘kulsinski’, ‘mahalanobis’, ‘matching’, ‘minkowski’, ‘rogerstanimoto’, ‘russellrao’, ‘seuclidean’, ‘sokalmichener’, ‘sokalsneath’,‘sqeuclidean’, ‘wminkowski’, ‘yule’.

*args:tuple. 弃用.

**kwargs:dict, optional

返回:Y:ndarray

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值