scipy的讀書報告

2022-07-11 19:30:12 字數 2038 閱讀 8213

scipy 提供了複製的演算法及其在 numpy 中作為函式的用法。這將分配高階命令和多種多樣的類來操作和視覺化資料。

scipy 將多個小型包整合在一起,每個包都針對單獨的科學計算領域。

其中的幾個子包是linalg(線性代數)、constants(物理和數學常數)和sparse(稀疏矩陣和相關例程)

值得注意的是,scipy 為表示隨機變數的物件提供了內建的建構函式。 下面是scipy 提供的多個子包中的 linalg 和stats

的幾個示例。由於子包是針對特點領域的。這使得scipy成為資料科學的完美選擇。

1.scipy 中的線性代數子包(scipy.linalg)應該以下列方式匯入:

import

scipy

import

numpy as np

from scipy import

linalg

mat_ = np.array([[2,3,1],[4,9,10],[10,5,6]]) #

建立矩陣

print

(mat_)

#>[[ 2 3 1],[ 4 9 10],[10 5 6]]

linalg.det(mat_) #

矩陣的行列式

inv_mat = linalg.inv(mat_) #

矩陣的逆

print

(inv_mat)

#>[[ 0.02409639 -0.07831325 0.12650602]

#[ 0.45783133 0.01204819 -0.09638554]

#[-0.42168675 0.12048193 0.03614458]]

2. 用於執行奇異值分解並儲存各個組成部分的**:

comp_1, comp_2, comp_3 =linalg.svd(mat_)

print

(comp_1)

print

(comp_2)

print

(comp_3)

#>[[-0.1854159 0.0294175 -0.98221971]

#[-0.73602677 -0.66641413 0.11898237]

#[-0.65106493 0.74500122 0.14521585]]

#[18.34661713 5.73710697 1.57709968]

#[[-0.53555313 -0.56881403 -0.62420625]

#[ 0.84418693 -0.38076134 -0.37731848]

#[-0.02304957 -0.72902085 0.6841033 ]]

3. scipy.stats 是乙個大型子包,包含各種各樣的統計分布處理函式,可用於操作不同型別的資料集。

from scipy import

stats

#從平均攝動3和標準攝動5的正常攝動中隨機產生大小為20的樣本

rvs_20 = stats.norm.rvs(3,5, size = 20)

print(rvs_20,'

\n---')

#以a=100, b=130為形狀引數,隨機變數0.41計算貝塔分布的cdf

cdf_ = scipy.stats.beta.cdf(0.41, a=100, b=130)

print

(cdf_)

#>[-1.49288331 12.43018057 -1.98896686 2.84913596 -1.94158066 -2.53572229

#-3.23105148 3.49129889 6.29223385 0.57010285 1.87261406 7.0897752

#2.64603964 4.81257768 7.21505841 -0.80754014 -4.14544522 -9.84438422

#0.43808749 2.96654881]

#---

#0.22500957436155394

numpy的讀書報告

numpy numpy是python中科學計算的基礎包。它是乙個python庫,提供多維陣列物件,各種派生物件 如掩碼陣列和矩陣 以及用於陣列快速操作的各種api,有包括數學 邏輯 形狀操作 排序 選擇 輸入輸出 離散傅利葉變換 基本線性代數,基本統計運算和隨機模擬等等。numpy包的核心是 nda...

matplotlib的讀書報告

matplotlib是python的乙個2d圖形庫,能夠生成各種格式的圖形 諸如折線圖,散點圖,直方圖等等 介面可互動 可以利用滑鼠對生成圖形進行點選操作 同時該2d圖形庫跨平台,即既可以在python指令碼中編碼操作,也可以在jupyter notebook中使用,以及其他平台都可以很方便的使用m...

《程式設計珠璣》讀書報告

最後幾章還沒怎麼看,先寫這麼多吧。本章概括的講述了如何用程式解決問題,包括 準確的問題描述 程式設計以及實現。本章首先提出了乙個問題 如何給磁碟檔案排序?並說明應該先對問題進行準確的描述,將已知條件組織成一種更客觀 更易用的形式 輸入 輸出以及約束。在程式設計階段,應該充分理解問題的特點,選擇合適的...