SciPy库
SciPy簡介
SciPy,發(fā)音為Sigh Pi,是一個python開源庫,在BSD授權(quán)下發(fā)布,主要用于數(shù)學(xué)、科學(xué)和工程計算。
SciPy庫依賴于NumPy,NumPy提供了方便和快速的n維數(shù)組操作。它們一起可以運行在所有流行的操作系統(tǒng)上,安裝簡單,使用免費。
現(xiàn)在,組合使用NumPy、SciPy和Matplotlib,作為MATLAB的替代品已經(jīng)成為趨勢。相比MATLAB,Python功能更強(qiáng)大、編程更容易。
SciPy 模塊
根據(jù)針對的計算領(lǐng)域,SciPy被分成各個不同的模塊。下表對這些模塊進(jìn)行了總結(jié):
scipy.cluster Vector quantization / Kmeans
scipy.constants 物理和數(shù)學(xué)常數(shù)
scipy.fftpack 傅里葉變換
scipy.integrate 積分
scipy.interpolate 插值
scipy.io 文件
scipy.linalg 線性代數(shù)
scipy.ndimage 多維圖像處理
scipy.odr Orthogonal(正交) distance regression
scipy.optimize 優(yōu)化
scipy.signal 信號處理
scipy.sparse 稀疏矩陣
scipy.spatial Spatial data structures and algorithms
scipy.special 特殊函數(shù)
scipy.stats 統(tǒng)計
SciPy參考學(xué)習(xí)資料
https://www.qikegu.com/docs/3471
題目1 隨機(jī)產(chǎn)生一個5行3列的矩陣(元素值的范圍1-100)表示坐標(biāo),使用scipy計算行與行的距離
應(yīng)用提示:在知道各個城市的坐標(biāo)的前提下,可以通過該方法計算兩兩城市之間的距離。
import numpy as np from scipy.spatial import distance a=np.random.randint(1,100,(5,3)) dis_matrix1=distance.cdist(a, a, 'euclidean') array([[ 0. , 36.12478374, 40.85339643, 83.51047838,36.19392214],[ 36.12478374, 0. , 45.97825573, 58.69412236,32.78719262],[ 40.85339643, 45.97825573, 0. , 83.0722577 ,62.52199613],[ 83.51047838, 58.69412236, 83.0722577 , 0. ,56.83308895],[ 36.19392214, 32.78719262, 62.52199613, 56.83308895, 0. ]]) a array([[33, 37, 93],[53, 45, 64],[21, 12, 63],[35, 84, 24],[38, 70, 79]])題目2 使用scipy計算如下函數(shù)的最大值
[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-g1cSZuHl-1621857349589)(attachment:image.png)]
import numpy as np from scipy.optimize import fmin from scipy import optimizeimport mathdef f(x):return math.pow(math.sin(x-2),2)*math.exp(-math.pow(x,2))maximum = optimize.fminbound(lambda x: -f(x), -4, 4) maximum 0.21624106813643806總結(jié)
- 上一篇: bch纠错码 码长8_从HDMI视频数据
- 下一篇: 电子发声设计实验