B01_NumPy Ndarray對象(ndarray內容結構,參數,多維,最小維度,dtype參數)

NumPy Ndarray對象

NumPy 最重要的一個特點是其 N 維數組對象 ndarray,它是一系列同類型數據的集合,以 0 下標爲開始進行集合中元素的索引。

ndarray 對象是用於存放同類型元素的多維數組。
ndarray 中的每個元素在內存中都有相同存儲大小的區域。
ndarray 內部由以下內容組成:

  1. 一個指向數據(內存或內存映射文件中的一塊數據)的指針。
  2. 數據類型或 dtype,描述在數組中的固定大小值的格子。
  3. 一個表示數組形狀(shape)的元組,表示各維度大小的元組。
  4. 一個跨度元組(stride),其中的整數指的是爲了前進到當前維度下一個元素需要"跨過"的字節數。
    ndarray 的內部結構:
    在這裏插入圖片描述
    跨度可以是負數,這樣會使數組在內存中後向移動,切片中 obj[::-1]obj[:,::-1] 就是如此。
numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)

參數說明:

名稱 描述
object 數組或嵌套的數列
dtype 數組元素的數據類型,可選
copy 對象是否需要複製,可選
order 創建數組的樣式,C爲行方向,F爲列方向,A爲任意方向(默認)
subok 默認返回一個與基類類型一致的數組
ndmin 指定生成數組的最小維度

實例

接下來可以通過以下實例幫助我們更好的理解。

# -*- coding: UTF-8 -*-

import numpy as np
a = np.array([1,2,3])
print(a)

輸出結果如下:

[1 2 3]

實例2

import numpy as np

# 多於一個維度
a = np.array([[1,2],[3,4]])
print(a)

運行結果:

[[1 2]
 [3 4]]

實例3

# 最小維度
import numpy as np
a = np.array([1,2,3,4,5], ndmin = 2)
print(a)

輸出如下:

[[1 2 3 4 5]]

實例4

# dtype 參數
import numpy as np
a = np.array([1,2,3], dtype = complex)
print(a)

輸出結果:

[1.+0.j 2.+0.j 3.+0.j]

ndarray 對象由計算機內存的連續一維部分組成,並結合索引模式,將每個元素映射到內存塊中的一個位置。內存塊以行順序(C樣式)或列順序(FORTRAN或MatLab風格,即前述的F樣式)來保存元素。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章