如何使用Numpy數組?

2021-01-10 素食先生lpt
一起學習,一起成長!

【連續「Python利用Numpy數組進行數據處理(一)」】

2.【聚合函數】數學和統計方法[軸和0]

可以通過數組上的一組數學函數對整個數組或某個軸向的數組進行統計計算。

書寫方式舉例:

arr.mean() 或np.mean(arr)

#mean和sum這類的函數可以接受一個axis參數(用於計算該軸向上的統計值),最終結果是一個少一維的數組:

#搞清楚軸和0的問題【重要】

arr.mean(axis=1)

arr.sum(0)

表4-5 基本數組統計方法:

方法

說明

sum

對數組中全部或某軸向的元素求和。零長度的數組的sum為0

mean

算術平均數。零長度的數組的mean為NaN

std、var

分別為標準差和方差,自由度可調(默認為n)

min、max

最小值和最大值

argmin、argmax

分別為最小和最大元素的索引

cumsum

所有元素的累計和

sumprod

所有元素的累計積

3.用於布爾型數組的方法[any/all]

在上面這些方法中,布爾值會被強制轉換為1(True)和0(False)。因此,sum經常被用來對布爾型數組中的True值計數:

In [5]: arr=np.random.randn(100)

In [7]: (arr>0).sum() #正值的數量

Out[7]: 50

any用於測試數組中是否存在一個或多個True。

all檢查數組中所有值是否都是True。

In [2]: bools=np.array([False,False,True,False])

In [3]: bools.any()

Out[3]: True

In [4]: bools.all()

Out[4]: False

4.排序

Numpy數組也可以通過sort方法就地排序:

In [8]: arr=np.random.randn(8)

In [10]: arr.sort()

In [11]: arr

Out[11]:

array([-0.67762856, -0.60940946, -0.04936393, -0.02071468, 0.45711082,

1.23125481, 1.39542771, 1.53330519])

#軸上進行排序

arr.sort(1)

其中1為軸編號。

頂級方法np.sort返回的是數組的已排序副本,而就地排序則會修改數據本身。計算數組分位數最簡單的方法是對其進行排序,然後選取特定位置的值:

In [12]: large_arr=np.random.randn(1000)

In [13]: large_arr.sort()

In [14]: large_arr[0.05*len(large_arr)]

Out[14]: -1.5975734429305708

5.唯一化以及其他的集合邏輯

Numpy提供了一些針對一維ndarray的基本集合運算。

5.1 np.unique

主要用於找出數組中的唯一值並返回已排序的結果。

書寫方式:np.unique(names)

5.2 np.in1d

主要用於測試一個數組中的值在另一個數組中的成員資格,返回一個布爾型數組。

書寫方式:np.in1d(value1,value2)

In [3]: values=np.array([6,0,0,3,2,5,6])

In [4]: np.in1d(values,[2,3,6])

Out[4]: array([ True, False, False, True, True, False, True], dtype=bool)

「親,如果筆記對您有幫助,收藏的同時,記得給點個讚、加個關注哦!感謝!」「文中代碼均親測過,若有錯誤之處,歡迎批評指正,一起學習,一起成長!」

利用python進行數據分析

相關焦點

  • 如何獲取numpy數組的真實地址?如何與ctypes數組共享內存?
    01如何獲取numpy數組元素的真實地址?在Python編程中,numpy是一個很好用的擴展程序庫,將其與SciPy庫和 Matplotlib繪圖庫一起使用,可構成一個強大的類似於Matlab的科學計算環境,有助於我們通過 Python 學習數據科學或者機器學習。在Python中,當你定義了一個numpy類型的數組後,它內部元素的真實地址如何獲得呢?
  • NumPy ndarray數組的創建
    NumPy 是 Python 的外部庫,不在標準庫中,若要使用它,需要先導入 NumPy:import numpy as
  • D02 Numpy常用函數,如何優雅的遍歷一個多維數組?
    title: D02|Numpy常用函數author: Adolph Leecategories: 數據挖掘基礎tags:Python數據挖掘基礎Numpy如何遍歷一個數組,使用嵌套for循環嗎?當我們想要遍歷一個多維數組的時候,如果通過不停的使用循環去遍歷,這會讓我們的代碼可讀性與性能都變得很差,numpy提供了一個函數nditer,以幫助我們遍歷數組。nditer的入參是一個數組,返回值是一個可迭代對象。nditer 默認會優先遍歷行序,通過order參數可以使其優先遍歷列序。
  • Python使用ctypes模塊調用DLL函數之C語言數組與numpy數組傳遞
    一般情況下,DLL函數中傳遞C語言類型的數組,在接收到Python語言中時,通常將其轉換為numpy庫裡面的數組類型,這樣做的好處是可以藉助於numpy強大的分析處理功能對數據直接作後續處理。這次通過例子演示下C語言數組到numpy數組之間是怎樣傳遞的。
  • NumPy ndarray數組元素的獲取
    生成 ndarray 數組後,如何讀取我們所需要的數據呢?
  • Python數據分析之numpy數組全解析
    ndarray 中的每個元素在內存中使用相同大小的塊numpy數組創建 創建Numpy數組一般有三種方法:(1)通過傳入可待跌對象創建,我將之稱為基本方法(2)使用Numpy內部功能函數,內部方法(3)使用特殊的庫函數,特殊方法基本方法:np.array()基本方法是通過給numpy提供的一些函數中傳入可迭代對象來創建數組
  • Python編程:如何規範numpy中數組元素的列印輸出格式
    引言對於Python語言開發者,如果你經常處理大量數據運算的話,numpy是一個必不可少的程序擴展庫,它支持大維度數組與矩陣運算,提供了非常豐富的數學運算函數,並且,相對於Python自身提供的列表類型,它在運算速度上有著無與倫比的優勢。
  • Python數據分析類庫系列-Numpy之多維數組ndarray
    比起Python的內置序列,NumPy數組使用的內存更少。 NumPy可以在整個數組上執行複雜的計算,而不需要Python的for循環。你可以利用這種數組對整塊數據執行一些數學運算,其語法跟標量元素之間的運算一樣。
  • NumPy的數組對象
    一、創建數組可以有多種方式創建NumPy數組:(1)使用NumPy的array函數從Python列表中創建數組,數組類型由列表中的數據類型確定;(2)使用NumPy的zeros函數創建數組元素全部為0的數組,默認情況下數組元素的類型為float64;(3)使用NumPy的ones函數創建數組元素全部為1的數組,默認情況下數組元素的類型為float64;(4)使用NumPy
  • Python Numpy-數組的常用函數
    日常使用numpy進行數據分析的時候,通常會使用模塊提供的函數,很大程度上方便了對於數據的操作。
  • 如何使用Numpy進行運算?
    numpy是python及其重要的計算包,那麼numpy是如何進行運算的,接下裡小編將具體進行介紹:1.Numpy數組運算Numpy數組運算(如根據布爾型數組進行過濾、標量乘法、應用數學函數等)都會保留索引和值之間的連結:如:@ In [7]: obj2[obj2>0]@ In [8]: obj2*2@ In [10]: np.exp(obj2)2.可使用部分字典參數的函數Series可被看成是索引值到數據值的一個映射
  • 以別墅圖片為例 結合numpy和OpenCV庫 探尋Python中數組組合方式
    前幾篇博文我們介紹了numpy的基礎知識numpy庫學習總結(基礎知識)和numpy中array數組的維度變化Python數據分析必備基本功 numpy數組維度變換的常用方法匯總。今天,我們來梳理一下numpy中數組array的組合操作。
  • Numpy的ndarray:一種多維數組對象
    前言Numpy最重要的一個特點就是其N維數組對象(即ndarray),該對象是一個快速而靈活的大數據集容器。可以利用這種數組對整塊數據執行一些數學運算。模塊導入方式如下:import numpy as npndarray是一個通用的同構數據多維容器,也就是說,其中的所有元素必須是相同類型的。
  • NumPy基礎教程,帶你玩轉多維數組
    注意 numpy.array 和標準 Python 庫中的類 array.array 是不同的。標準 Python 庫中的類 array.array 只處理一維的數組,提供少量的功能。Python 中的標準 type 函數同樣可以用於顯示數組類型,NumPy 有它自己的類型如:numpy.int32, numpy.int16, 和 numpy.float64,其中「int」和「float」代表數據的種類是整數還是浮點數,「32」和「16」代表這個數組的字節數(存儲大小)。ndarray.itemsize:數組中每個元素的字節存儲大小。
  • Python教程:numpy數組初始化為相同的值
    有時我們需要將numpy數組初始化為相同的值,numpy提供了一些方法幫助我們實現這個目的。 1. np.zeros np.zeros返回來一個給定形狀和類型的用0填充的數組。
  • Python學習第113課——numpy中用條件判斷去篩選數組中的元素
    之前我們學習了如何在numpy中查找數組元素的方法和技巧,現在我們學習如何用條件判斷的方式篩選數組的元素。●numpy中的數組可以直接進行比較直接上代碼:運行結果:我們看到,condition列印出來,它的結構和h的結構一樣。
  • Python中NumPy簡介及使用舉例
    它描述相同類型的元素集合,可以使用基於零的索引訪問集合中元素。基本的ndarray是使用NumPy中的數組函數創建的: numpy.array。NumPy支持比Python更多種類的數值類型。NumPy數值是dtype(數據類型)對象的實例,每個對象具有唯一的特徵。
  • NumPy中的廣播:對不同形狀的數組進行操作
    在機器學習領域,無論原始數據採用哪種格式,都必須將其轉換為數字數組以進行計算和分析。 因此,需要對陣列進行快速,魯棒和準確的計算,以對數據執行有效的操作。  NumPy是科學計算的主要庫,因為它提供了我們剛剛提到的功能。 在本文中,我們重點介紹正在廣播的NumPy的特定類型的操作。  廣播描述了在算術運算期間如何處理具有不同形狀的數組。
  • Python使用ctypes模塊調用DLL函數之複數數組的參數傳遞
    這兒就涉及到了如何將C語言中的複數數組(Complex array)類型與Python中的數據類型進行交互的問題。在Python語言中,可以使用ctypes模塊調用其它如C++語言編寫的動態連結庫DLL文件中的函數,前面多篇文章中已經講了傳遞數值/指針/字符串參數、傳遞結構體參數、傳遞普通數組類型的例子,大家可以回看一下,這樣可以更好的理解本次要講的內容。
  • 細說NumPy數組的四種乘法,帶你走進向量運算的奇妙世界
    numpy.dot()函數提供了點乘運算。對於一維數組,NumPy的點乘就是向量點乘,其結果是一個標量。對於多維數組,則需要滿足一定條件才能實現點乘,且其結果不再是標量,而是一個多維數組。比如,NumPy的矩陣相乘,就是二維數組的點乘,參與點乘的第一個數組的列數必須等於第二個數組的行數。