NumPy科學計算庫
提供了多維數組、矩陣的常用操作和一些高效的科學計算函數。
底層運算通過C語言實現,處理速度快、效率高,適用於大規模多維數組。
可以直接完成數組和矩陣運算,無需循環。
導入NumPy庫
import numpy as np //在調用Numpy中的函數時,一定要加上前綴np
from numpy import* //在調用Numpy中的函數時,可以不加前綴
創建數組
array([列表]/(元組))
數組的屬性
NumPy要求數組中所有元素的數據類型必須是一致的
int8、uint8、int16、uint16、int32、uint32、int64、uint64
float16、float32、float64、float128
complex64、complex128、complex256
bool、object、string_、unicode_
可以在創建數組時指定數據類型
array([列表]/(元組), dtype=數據類型)
創建特殊的數組
數組運算
改變數組的形狀
當改變形狀時,應該考慮到數組中元素的個數,確保改變前後,元素總個數相等。
//創建數組並且改變數組形狀
b=np.arange(12).reshape(3,4)
數組間的運算
相加的2個數組的形狀和長度應該一致,否則就會出現錯誤
一維數組可以和多維數組相加,相加時會將一維數組擴展至多維。
數組之間的減法、乘法、除法運算,和加法運算規則相同。
當兩個數組中元素的數據類型不同時,精度低的數據類型,會自動轉換爲精度更高的數據類型,然後再進行運算。
矩陣運算——矩陣乘法
數組元素間的運算
軸(axes):數組中的每一個維度被稱爲一個軸
秩(rank):軸的個數
矩陣和隨機數
矩陣——numpy.matrix
matrix ( 字符串/列表/元組/數組 )
mat ( 字符串/列表/元組/數組 )
隨機數模塊——numpy.random
僞隨機數:由隨機種子,根據一定的算法生成的
隨機種子: 指定隨機數生成時所用算法開始的整數值。
- 如果使用相同的seed( )值,則每次生成的隨即數都相同。
- 如果不設置這個值,則系統根據時間來自己選擇這個值,此時每次生成的隨機數因時間差異而不同。
- 設置的seed()值僅一次有效。
- 隨機數產生的算法,和系統有關。
shuffle()——打亂順序函數 np.random.shuffle(序列)
Matplotlib數據可視化
Figure 創建畫布
figure(num,figsize,dpi,facecolor,edgecolor,frameon)
- num:圖形編號或名稱,取值爲數字/字符串。
- figsize:繪圖對象的寬和高,單位爲英寸。
- dpi:繪圖對象的分辨率,缺省值爲80。
- facecolor:背景顏色。
- edgecolor:邊框顏色。
- frameon:表示是否顯示邊框。
import matplotlib.pyplot as plt
plt.figure(figsize=(3,2),facecolor="green") #創建畫布
plt.plot() #繪製空白圖形
plt.show() #顯示繪圖
subplot 劃分子圖
subplot( 行數, 列數, 子圖序號 )
import matplotlib.pyplot as plt
fig = plt.figure()
plt.subplot(441)
plt.subplot(442)
plt.subplot(443)
plt.subplot(444)
plt.subplot(445)
plt.show()
全局標題 suptitle (標題文字)
子標題 title (標題文字)
其他各種圖的應用官網例子和解釋都特別好。直接上連接
https://matplotlib.org/index.html
matplotlib官網