您好,登錄后才能下訂單哦!
今天小編給大家分享一下怎么使用numpy提高Python數據分析效率的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
數組初始化即創建數組,numpy提供了相當多的創建不同結構的數組的方式,合理的利用這些數據初始化的操作能夠讓我們的開發事半功倍。
numpy目前最多可以支持三維數組的創建,下面我們直接通過實例來說明其使用技巧。
# 導入數據處理的numpy模塊 import numpy as np # 通過python列表list創建numpy一維數組 array_ = np.array(['a', 'b', 'c']) # 控制臺打印一維數組 print(array_) # ['a' 'b' 'c'] # 通過python列表list創建numpy二維數組 array_ = np.array([('a', 'b', 'c'), (1, 2, 3)]) # 控制臺打印二維數組 print(array_) # [['a' 'b' 'c'] # ['1' '2' '3']] # 創建四行五列的二維數組,并填充值為1,可通過full函數創建任意的二維數組 array_ = np.full((5, 6), 1) # 控制臺打印任意的行、列的二維數組 print(array_) # [[1 1 1 1 1 1] # [1 1 1 1 1 1] # [1 1 1 1 1 1] # [1 1 1 1 1 1] # [1 1 1 1 1 1]] # 創建任意行、列的二維數組,并且填充值為隨機數 array_ = np.random.rand(3, 4) # 控制臺打印隨機數的二維數組 print(array_) # [[0.94372258 0.66743021 0.47003813 0.44912263] # [0.71435389 0.47909147 0.52322176 0.32445311] # [0.9843635 0.14054129 0.10611754 0.45922036]]
上述便是常用的numpy模塊關于數組的初始化方式,靈活應用幾種array數組的創建方式能夠解決在業務開發過程中的很多問題。
除了numpy的數組的初始化方式,關于numpy數據元素的計算是開發過程中常常會使用的計算方式。
numpy模塊提供的很多計算函數不僅簡便,而且執行效率更高。有時候比我們自己寫的函數運行速度甚至高出幾倍不止。
下面就來看看在日常的數據處理過程中常用的幾種數據處理函數的使用過程。
# array函數初始化多維度數組 array_ = np.array([(1, 2), (3, 4), (5, 6)]) # sum函數計算多維度數組每一列的和 sum_ = np.sum(array_) # 打印數組計算結果 print(sum_) # 21 # mean函數計算多維度數組的平均值 mean_ = np.mean(array_) # 打印數組計算結果 print(mean_) # 3.5 # tile函數使元數組變成多行多列的形式,相當于復制的效果 tile_ = np.tile(array_, (3, 4)) # 打印計算結果 print(tile_) # [[1 2 1 2 1 2 1 2] # [3 4 3 4 3 4 3 4] # [5 6 5 6 5 6 5 6] # [1 2 1 2 1 2 1 2] # [3 4 3 4 3 4 3 4] # [5 6 5 6 5 6 5 6] # [1 2 1 2 1 2 1 2] # [3 4 3 4 3 4 3 4] # [5 6 5 6 5 6 5 6]] # 初始化二維數組 array_ = np.array([[3, 6, 4, 11], [5, 10, 1, 3]]) # argsort函數完成對數組的排序操作 argsort_ = array_.argsort() # 打印計算結果 print(argsort_) # [[0 2 1 3] # [2 3 0 1]] # argsort函數完成對數組列值的排序操作 argsort_ = array_.argsort(axis=0) # 打印計算結果 print(argsort_) # [[0 0 1 1] # [1 1 0 0]]
注意:上述的排序結果返回的是源數組的排序后的下標。
除了上述的numpy數組計算的基本操作,最常用的就是下面的numpy數組的加、減、乘、除計算。
通過數組的加、減、乘、除計算能夠滿足我們在業務開發過程中的絕大多數的計算操作。
# 初始化兩個數組a_、b_分別用于下面的邏輯計算 a_ = np.array([1, 2, 3, 4]) b_ = np.array([5, 6, 7, 8]) # 計算兩個一維數組的和 result_ = a_ + b_ # 打印計算結果 print(result_) # [ 6 8 10 12] # 計算兩個一維數組的差 result_ = a_ - b_ # 打印計算結果 print(result_) # [-4 -4 -4 -4] # 計算兩個一維數組的乘積 result_ = a_ * b_ # 打印計算結果 print(result_) # [ 5 12 21 32] # 計算兩個一維數組的商 result_ = a_ / b_ # 打印計算結果 print(result_) # [0.2 0.33333333 0.42857143 0.5 ]
除了上述的一維數組的相關計算,同時numpy還可支持二維矩陣的邏輯計算。
數組元素的提取其實主要還是對數組的下標索引的相關操作。
numpy提供的多維數組同樣能夠使用對應的索引位置提取出相應的值。
# 初始化二維數組 array_ = np.array([[3, 6, 4, 11], [5, 10, 1, 3]]) # 提取第二行、第四列的值 value_ = array_[1, 3] # 打印計算結果 print(value_) # 3 # 提取出倒數第二行、第三列到第四列之間的二維數組 value_ = array_[-2:, 2:3] # 打印計算結果 print(value_) # [[4] # [1]] # 獲取數組中大于、小于、等于某個數值的結果 result_ = array_ >= 10 # 打印計算結果 print(result_) # [[False False False True] # [False True False False]] # 返回的數組中,所在位置為True的數值就是符合邏輯計算的數值。
多維數組的索引的數值提取操作,能夠輔助我們完成更加復雜的數據處理操作。
以上就是“怎么使用numpy提高Python數據分析效率”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。