Numpy array
s'de axes
boyutluluk, herhangi bir geometrik uzayın boyutluluğunu değil, onu indekslemek için gereken sayıya işaret eder . Örneğin, 3B alanda noktaların konumlarını 2B bir dizi ile tanımlayabilirsiniz:
array([[0, 0, 0],
[1, 2, 3],
[2, 2, 2],
[9, 9, 9]])
Hangi sahip shape
bir (4, 3)
ve boyut 2
. Ancak, 3B alanı tanımlayabilir çünkü her satırın ( axis
1) uzunluğu üçtür, dolayısıyla her satır, bir noktanın konumunun x, y ve z bileşeni olabilir. axis
0'ın uzunluğu nokta sayısını gösterir (burada, 4). Bununla birlikte, bu, dizinin kendisinin bir niteliği değil, kodun tanımladığı matematiğe daha çok bir uygulamadır. Matematikte, bir vektörün boyutu onun uzunluğu olacaktır (örneğin, bir 3B vektörün x, y ve z bileşenleri), ancak numpy'de, herhangi bir "vektör" gerçekten sadece değişen uzunlukta bir 1d dizisi olarak kabul edilir. Dizi, açıklanmakta olan alanın (varsa) boyutunun ne olduğu umurunda değil.
Bununla oynayabilir ve bir dizinin boyutlarının sayısını ve şeklini şöyle görebilirsiniz:
In [262]: a = np.arange(9)
In [263]: a
Out[263]: array([0, 1, 2, 3, 4, 5, 6, 7, 8])
In [264]: a.ndim
Out[264]: 1
In [265]: a.shape
Out[265]: (9,)
In [266]: b = np.array([[0,0,0],[1,2,3],[2,2,2],[9,9,9]])
In [267]: b
Out[267]:
array([[0, 0, 0],
[1, 2, 3],
[2, 2, 2],
[9, 9, 9]])
In [268]: b.ndim
Out[268]: 2
In [269]: b.shape
Out[269]: (4, 3)
Dizilerin birçok boyutu olabilir, ancak iki veya üçün üzerinde görselleştirmek zorlaşır:
In [276]: c = np.random.rand(2,2,3,4)
In [277]: c
Out[277]:
array([[[[ 0.33018579, 0.98074944, 0.25744133, 0.62154557],
[ 0.70959511, 0.01784769, 0.01955593, 0.30062579],
[ 0.83634557, 0.94636324, 0.88823617, 0.8997527 ]],
[[ 0.4020885 , 0.94229555, 0.309992 , 0.7237458 ],
[ 0.45036185, 0.51943908, 0.23432001, 0.05226692],
[ 0.03170345, 0.91317231, 0.11720796, 0.31895275]]],
[[[ 0.47801989, 0.02922993, 0.12118226, 0.94488471],
[ 0.65439109, 0.77199972, 0.67024853, 0.27761443],
[ 0.31602327, 0.42678546, 0.98878701, 0.46164756]],
[[ 0.31585844, 0.80167337, 0.17401188, 0.61161196],
[ 0.74908902, 0.45300247, 0.68023488, 0.79672751],
[ 0.23597218, 0.78416727, 0.56036792, 0.55973686]]]])
In [278]: c.ndim
Out[278]: 4
In [279]: c.shape
Out[279]: (2, 2, 3, 4)