數據的維度
維度:一組數據的組織形式
一維數據采用線性方式組織
列表和數組
列表:數據類型可以不同
數組:數據類型相同
二維數據由多個一維數據構成,是一維數據的組合形式
ndarray 數組對象
ndarray是一個多維數組對象,由兩部分組成:
1)實際的數據
2)描述這些數據的元數據(數據維度、數據類型等)
使用np.array()生成一個ndarray數組
直接打印np.array輸出以[ ]包裹,元素以空格分割
其中:
軸(axis)是保存數據的維度
秩(rank)是軸的數量
屬性:擁有六個參數 詳見上一篇
其中詳細描述一下np.shape:
shape表示數組對象的形狀,當打印的時候,有多少層嵌套的中括號對應就有幾個維度,如果同一維度元素數量不一致,則會空出對應維度的元素數
import numpy as np def ndarray(): a0 = np.array(1) a = np.array([1]) b = np.array([1,2,3]) c = np.array([[1,2,3],[4,5,6]]) d = np.array([[1,2,3],[1,2]]) e = np.array([[[1,2,3]]]) print(a0.shape,a.shape,b.shape,c.shape,d.shape,e.shape) return 0 ndarray()
結果:
() (1,) (3,) (2, 3) (2,) (1, 1, 3)
ndarray數組一般要求所有元素類型相同(同質),數組下標從0開始。
在數組元素維度相同的時候可以將數組對象作為單一數據進行運算
import numpy as np def pySum(): a=[0,1,2,3,4] b=[9,8,7,6,5] c=[] for i in range(len(a)): c.append(a[i]**2 + b[i]**3) return c def npSum(): a=np.array([0,1,2,3,4]) b=np.array([9,8,7,6,5]) c = a**2 + b**3 return c print(pySum()) print(npSum())
運行結果:
[729, 513, 347, 225, 141]
[729 513 347 225 141]