Python語言不僅是一門易學易用的語言,同時也被廣泛地運用在科學計算和數據分析領域。Numpy是Python語言下的一個重要的科學計算和數據分析的模塊,因而成為Python的核心科學計算庫。Numpy強力支持多維數組和矩陣計算,它擁有豐富的科學計算函數庫用於線性代數運算、傅立葉變換和隨機數生成等方面,同時也是其它重要的科學計算和數據分析庫的基礎。
一、快速上手
在正式開始Python的高效科學計算之前,需要先通過pip安裝numpy庫。
pip install numpy
安裝完成後,就可以開始使用numpy庫。使用import來引入numpy模塊,當引入後便可使用模塊內的函數和方法。
import numpy as np
Numpy中非常重要和強大的一個特性是其 ndarray 對象,ndarray 對象是一個用於存放相同數據類型元素的多維數組,可以是單維數組也可以是多維數組。下面是一個例子:
import numpy as np a = np.array([1, 2, 3]) # 創建一個一維數組 print(a) # 輸出 [1 2 3] b = np.array([[1, 2, 3], [4, 5, 6]]) # 創建一個二維數組 print(b) # 輸出 [[1 2 3] [4 5 6]]
上述例子中,使用np.array()創建了一個一維數組和一個二維數組,通過print()輸出數組的內容,我們可以發現Numpy對於數組的表現會更加的美好。
Numpy中的一些常用函數:
- np.arange():按指定步長生成一個一維數組。
- np.random.rand():生成指定形狀的隨機矩陣。
- np.exp():對指定矩陣中的所有元素進行指數運算。
二、Numpy的數組與矩陣計算
Numpy的數組與矩陣計算是其最強大的特性之一。在進行科學計算和數據分析的時候,我們通常會面臨著多維數組和矩陣計算的問題。在Python中,如果我們需要用for循環去實現這些計算,那麼一定是非常低效的。而利用Numpy的數組和矩陣計算,可以快速高效地實現複雜的科學計算和數據分析。
Numpy庫提供了很多的函數用於處理數組和矩陣,比如np.dot()函數用於做矩陣乘法,np.transpose()函數用於做矩陣轉置,np.linalg.inv()函數也常用於求矩陣的逆矩陣,等等。
下面是一個數組和矩陣計算的例子:
import numpy as np a = np.array([[1, 2], [3, 4]]) print(a) # 輸出 [[1 2] # [3 4]] b = np.array([[0, 1], [1, 0]]) print(b) # 輸出 [[0 1] # [1 0]] c = np.dot(a, b) # 數組 a 和 b 的矩陣乘法 print(c) # 輸出 [[2 1] # [4 3]] d = np.transpose(a) # 矩陣 a 的轉置 print(d) # 輸出 [[1 3] # [2 4]] e = np.linalg.inv(a) # 矩陣 a 的逆矩陣 print(e) # 輸出 [[-2. 1. ] # [ 1.5 -0.5]]
三、Numpy的常用函數
Numpy除了強大的數組和矩陣計算功能之外,還提供了很多實用的函數,這些函數可以被廣泛的應用在科學計算和數據分析事務中。在這裡,我們介紹幾個常用的函數。
- np.sum():對整個數組中的元素進行求和。
- np.mean():對整個數組中的元素進行求平均值。
- np.std():對整個數組中的元素進行求標準差。
- np.max():對整個數組中的元素進行求最大值。
- np.min():對整個數組中的元素進行求最小值。
- np.sort():對整個數組中的元素進行排序。
- np.argmax():返回整個數組中的最大值的索引。
- np.argmin():返回整個數組中的最小值的索引。
下面是一個使用了常用函數的例子:
import numpy as np a = np.array([7, 3, 9, 1, 5, 8, 2, 6, 4]) # 創建一個一維數組 sum1 = np.sum(a) # 整個數組之和 print(sum1) mean1 = np.mean(a) # 整個數組元素的平均值 print(mean1) std1 = np.std(a) # 整個數組元素的標準差 print(std1) max1 = np.max(a) # 整個數組中的最大值 print(max1) min1 = np.min(a) # 整個數組中的最小值 print(min1) sort1 = np.sort(a) # 整個數組元素的排序結果 print(sort1) argmax1 = np.argmax(a) # 整個數組中的最大值的索引 print(argmax1) argmin1 = np.argmin(a) # 整個數組中的最小值的索引 print(argmin1)
四、小結
Numpy是Python語言下的一個重要的科學計算和數據分析的模塊。它強力支持多維數組和矩陣計算,擁有豐富的科學計算函數庫。本文介紹了numpy的基本操作,數組和矩陣計算,以及常用的函數等方面。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/285906.html