NumPy 基礎知識

2021-09-03 16:45 更新

NumPy 的主要對象是同構多維數(shù)組。它是一個元素表(通常是數(shù)字),所有類型都相同,由非負整數(shù)元組索引。在 NumPy 中,維度稱為軸。 例如,3D 空間中一個點的坐標[1,?2,?1]只有一個軸。該軸有 3 個元素,因此我們說它的長度為 3。在下圖中的示例中,數(shù)組有 2 個軸。第一個軸的長度為 2,第二個軸的長度為 3。

[[1., 0., 0.],
 [0., 1., 2.]].

NumPy 的數(shù)組類稱為ndarray。它也被稱為別名?array。請注意,numpy.array這與標準 Python 庫類不同array.array,后者僅處理一維數(shù)組并提供較少的功能。ndarray對象更重要的屬性是:

  • ndarray.ndim 數(shù)組的軸數(shù)(維度)。
  • ndarray.shape 數(shù)組的維度。這是一個整數(shù)元組,象征著每個維度中數(shù)組的大小。對于具有n行和m列的矩陣,shape將為(n,m)。因此,元組shape的長度是軸的數(shù)量,ndim。
  • 數(shù)組大小 數(shù)組的元素總數(shù)。這等于shape元素的乘積。
  • ndarray.dtype 描述數(shù)組中元素類型的對象。可以使用標準 Python 類型創(chuàng)建或指定 dtype。此外,NumPy 提供了自己的類型。numpy.int32、numpy.int16 和 numpy.float64 是一些示例。
  • ndarray.itemsize 數(shù)組每個元素的大小(以字節(jié)為單位)。例如,一個類型元素的數(shù)組float64itemsize8 個(=64/8),而一個類型的元素complex32itemsize4 個(=32/8)。它相當于ndarray.dtype.itemsize。
  • ndarray.data 包含數(shù)組實際元素的緩沖區(qū)。通常,我們不需要使用此屬性,因為我們將使用索引工具訪問數(shù)組中的元素。

例子:

import numpy as np
>>> a = np.arange(15).reshape(3, 5)
>>> a
array([[ 0,  1,  2,  3,  4],
       [ 5,  6,  7,  8,  9],
       [10, 11, 12, 13, 14]])
>>> a.shape
(3, 5)
>>> a.ndim
2
>>> a.dtype.name
'int64'
>>> a.itemsize
8
>>> a.size
15
>>> type(a)
<class 'numpy.ndarray'>
>>> b = np.array([6, 7, 8])
>>> b
array([6, 7, 8])
>>> type(b)
<class 'numpy.ndarray'>

以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號