ΠΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ²Π»ΡΡΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ ΡΠΈΠΏΠ° ufunc ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΊ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌ ΠΏΠΎΡΠ»Π΅ΠΌΠ΅Π½ΡΠ½ΠΎ. ΠΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΠΌΠ΅ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ:
accumulate() ΠΠΊΠΊΡΠΌΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°. outer() ΠΠ½Π΅ΡΠ½Π΅Π΅ Β«ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅Β». reduce() Π‘ΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅. reduceat() Π‘ΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π² Π·Π°Π΄Π°Π½Π½ΡΡ ΡΠΎΡΠΊΠ°Ρ .ΠΡΠΈΠΌΠ΅Ρ Ρ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ add() ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ½ΡΡΡ ΡΠΌΡΡΠ» ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ Π΅Π΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²:
>>> from Numeric import add
>>> add([[1, 2], [3, 4]], [[1, 0], [0, 1]])
array([[2, 2],
[3, 5]])
>>> add([[1, 2], [3, 4]], [1, 0])
array([[2, 2],
[4, 4]])
>>> add([[1, 2], [3, 4]], 1)
array([[2, 3],
[4, 5]])
>>> add.reduce([1, 2, 3, 4]) # Ρ.Π΅. 1+2+3+4
10
>>> add.reduce([[1, 2], [3, 4]], 0) # Ρ.Π΅. [1+3 2+4]
array([4, 6])
>>> add.reduce([[1, 2], [3, 4]], 1) # Ρ.Π΅. [1+2 3+4]
array([3, 7])
>>> add.accumulate([1, 2, 3, 4]) # Ρ.Π΅. [1 1+2 1+2+3 1+2+3+4]
array([ 1, 3, 6, 10])
>>> add.reduceat(range(10), [0, 3, 6]) # Ρ.Π΅. [0+1+2 3+4+5 6+7+8+9]
array([ 3, 12, 30])
>>> add.outer([1,2], [3,4]) # Ρ.Π΅. [[1+3 1+4] [2+3 2+4]]
array([[4, 5],
[5, 6]])
ΠΠ΅ΡΠΎΠ΄Ρ accumulate(), reduce() ΠΈ reduceat() ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ β Π½ΠΎΠΌΠ΅Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ Π΄Π»Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π½ΡΠ»Π΅Π²Π°Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ.
Π£Π½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π΄Π²ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π·Π°Π΄Π°Π²Π°ΡΡ ΠΈ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ, Π΄Π»Ρ ΠΏΡΠΈΠ΅ΠΌΠ° ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° ΡΡΠ½ΠΊΡΠΈΠΈ. Π’ΠΈΠΏ ΡΡΠ΅ΡΡΠ΅Π³ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΡΡΠΎΠ³ΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠΈΠΏΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ½ΠΊΡΠΈΡ sqrt() Π΄Π°ΠΆΠ΅ ΠΎΡ ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π» ΠΈΠΌΠ΅Π΅Ρ ΡΠΈΠΏ Float.
>>> from Numeric import array, sqrt, Float
>>> a = array([0, 1, 2])
>>> r = array([0, 0, 0], Float)
>>> sqrt(a, r)
array([ 0. , 1. , 1.41421356])
>>> print r
[ 0. 1. 1.41421356]
ΠΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅:ΠΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ° ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° ΠΌΠ°ΡΡΠΈΠ², ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΈΠ³ΡΡΠΈΡΡΠ΅Ρ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°Ρ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΡΡΠ΅Π½. Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΊΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ:
>>> import Numeric
>>> m = Numeric.array([0, 0, 0, 1, 0, 0, 0, 0])
>>> add(m[:-1], m[1:], m[1:])
array([0, 0, 1, 1, 1, 1, 1])
Π ΡΠ°ΠΊΠΈΡ Π½Π΅ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΡΡ ΡΠ»ΡΡΠ°ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ².
Π€ΡΠ½ΠΊΡΠΈΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ Numeric
Π‘Π»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ Numeric ΡΠ²Π»ΡΡΡΡΡ ΠΊΡΠ°ΡΠΊΠΎΠΉ Π·Π°ΠΏΠΈΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠΉ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²:
Π€ΡΠ½ΠΊΡΠΈΡ ΠΠ½Π°Π»ΠΎΠ³ ΡΡΠ½ΠΊΡΠΈΠΈ sum(a, axis) add.reduce(a, axis) cumsum(a, axis) add.accumulate(a, axis) product(a, axis) multiply.reduce(a, axis) cumproduct(a, axis) multiply.accumulate(a, axis) alltrue(a, axis) logical_and.reduce(a, axis) sometrue(a, axis) logical_or.reduce(a, axis) ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅:ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ axis ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ.
Π€ΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ
Π€ΡΠ½ΠΊΡΠΈΠΉ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π±ΡΠ΄ΡΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π²Π΅ ΠΈΠ· Π½ΠΈΡ , Π° ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½Ρ Π² ΡΠ°Π±Π»ΠΈΡΡ.
Π€ΡΠ½ΠΊΡΠΈΡ Numeric.take()Π€ΡΠ½ΠΊΡΠΈΡ Numeric.take() ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π·ΡΡΡ ΡΠ°ΡΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΡΠΌ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½ΠΎΠΌΠ΅Ρ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ (ΡΡΠ΅ΡΠΈΠΉ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ) ΡΠ°Π²Π΅Π½ Π½ΡΠ»Ρ.
>>> import Numeric
>>> a = Numeric.reshape(Numeric.arrayrange(25), (5, 5))
>>> print a
[[ 0 1 2 3 4]
[ 5 6 7 8 9]
[10 11 12 13 14]
[15 16 17 18 19]
[20 21 22 23 24]]
>>> print Numeric.take(a, [1], 0)
[ [5 6 7 8 9]]
>>> print Numeric.take(a, [1], 1)
[[ 1]
[ 6]
[11]
[16]
[21]]
>>> print Numeric.take(a, [[1,2],[3,4]])
[[[ 5 6 7 8 9]
[10 11 12 13 14]]
[[15 16 17 18 19]
[20 21 22 23 24]]]
Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΡΡΠ΅Π·Π°, ΡΡΠ½ΠΊΡΠΈΡ Numeric.take() ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ ΠΌΠ°ΡΡΠΈΠ²Π°, Π΅ΡΠ»ΠΈ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΡΡΡΡΠΊΡΡΡΠ° Π·Π°Π΄Π°Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½Π°. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Numeric.take(a, [[1,2],[3,4]]) ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ Π²Π·ΡΡΡΠ΅ ΠΏΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌ ΡΠ°ΡΡΠΈ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡ Π² ΠΌΠ°ΡΡΠΈΠ² ΡΠΎ ΡΡΡΡΠΊΡΡΡΠΎΠΉ ΡΠ°ΠΌΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΠΊΠ°ΠΊ Π΅ΡΠ»ΠΈ Π±Ρ Π²ΠΌΠ΅ΡΡΠΎ 1 Π±ΡΠ»ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ [5 6 7 8 9], Π° Π²ΠΌΠ΅ΡΡΠΎ 2 β [10 11 12 13 14] ΠΈ Ρ.Π΄.
Π€ΡΠ½ΠΊΡΠΈΠΈ Numeric.diagonal() ΠΈ Numeric.trace()Π€ΡΠ½ΠΊΡΠΈΡ Numeric.diagonal() Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Ρ ΠΌΠ°ΡΡΠΈΡΡ. ΠΠ½Π° ΠΈΠΌΠ΅Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ:
a ΠΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ². offset Π‘ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π²ΠΏΡΠ°Π²ΠΎ ΠΎΡ Β«Π³Π»Π°Π²Π½ΠΎΠΉΒ» Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ 0). axis1 ΠΠ΅ΡΠ²ΠΎΠ΅ ΠΈΠ· ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ, Π½Π° ΠΊΠΎΡΠΎΡΡΡ Π±Π΅ΡΠ΅ΡΡΡ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Ρ (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ 0). axis2 ΠΡΠΎΡΠΎΠ΅ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅, ΠΎΠ±ΡΠ°Π·ΡΡΡΠ΅Π΅ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΏΠ΅ΡΠ²ΡΠΌ ΠΏΠ»ΠΎΡΠΊΠΎΡΡΡ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΈ Π±Π΅ΡΠ΅ΡΡΡ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Ρ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ axis2=1.Π€ΡΠ½ΠΊΡΠΈΡ Numeric.trace() (Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΠ»Π΅Π΄Π° ΠΌΠ°ΡΡΠΈΡΡ) ΠΈΠΌΠ΅Π΅Ρ ΡΠ΅ ΠΆΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ, Π½ΠΎ ΡΡΠΌΠΌΠΈΡΡΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π½Π° Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ. Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π½ΠΈΠΆΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ ΠΎΠ±Π΅ ΡΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ:
>>> import Numeric
>>> a = Numeric.reshape(Numeric.arrayrange(16), (4, 4))
>>> print a
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]
[12 13 14 15]]
>>> for i in range(-3, 4):
... print "Sum", Numeric.diagonal(a, i), "=", Numeric.trace(a, i)
...
Sum [12] = 12
Sum [ 8 13] = 21
Sum [ 4 9 14] = 27
Sum [ 0 5 10 15] = 30
Sum [ 1 6 11] = 18
Sum [ 2 7] = 9
Sum [ 3] = 3
Π€ΡΠ½ΠΊΡΠΈΡ Numeric.choose()ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΎΠ΄ΠΈΠ½ ΠΌΠ°ΡΡΠΈΠ² Ρ ΡΠ΅Π»ΡΠΌΠΈ ΡΠΈΡΠ»Π°ΠΌΠΈ ΠΎΡ 0 Π΄ΠΎ n Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²:
>>> a = Numeric.identity(4)
>>> b0 = Numeric.reshape(Numeric.arrayrange(16), (4, 4))
>>> b1 = -Numeric.reshape(Numeric.arrayrange(16), (4, 4))
>>> print Numeric.choose(a, (b0, b1))
[[ 0 1 2 3]
[ 4 -5 6 7]
[ 8 9 -10 11]
[ 12 13 14 -15]]
Π‘Π²ΠΎΠ΄ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ NumericΠ‘Π»Π΅Π΄ΡΡΡΠ°Ρ ΡΠ°Π±Π»ΠΈΡΠ° ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ Numeric.
Π€ΡΠ½ΠΊΡΠΈΡ ΠΈ Π΅Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ allclose(a, b[, eps[, A]]) Π‘ΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ a ΠΈ b Ρ Π·Π°Π΄Π°Π½Π½ΡΠΌΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ eps ΠΈ Π°Π±ΡΠΎΠ»ΡΡΠ½ΡΠΌΠΈ A ΠΏΠΎΠ³ΡΠ΅ΡΠ½ΠΎΡΡΡΠΌΠΈ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ eps ΡΠ°Π²Π΅Π½ 1.0eβ1, Π° A = 1.0eβ8. alltrue(a[, axis]) ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π ΠΏΠΎ Π²ΡΠ΅ΠΉ ΠΎΡΠΈ axis ΠΌΠ°ΡΡΠΈΠ²Π° a argmax(a[, axis]) ΠΠ½Π΄Π΅ΠΊΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ axis argmin(a[, axis]) ΠΠ½Π΄Π΅ΠΊΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ axis argsort(a[, axis]) ΠΠ½Π΄Π΅ΠΊΡΡ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°, ΡΠ°ΠΊΠΈΠ΅, ΡΡΠΎ take(a, argsort(a, axis), axis) Π΄Π°Π΅Ρ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² a, ΠΊΠ°ΠΊ Π΅ΡΠ»ΠΈ Π±Ρ Π±ΡΠ»ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΎ sort(a, axis) array(a[, type]) Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ a Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° type arrayrange(start[, stop[, step[, type]]]) ΠΠ½Π°Π»ΠΎΠ³ range() Π΄Π»Ρ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² asarray(a[, type[, savespace]]) Π’ΠΎ ΠΆΠ΅, ΡΡΠΎ ΠΈ array(), Π½ΠΎ Π½Π΅ ΡΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΠΉ ΠΌΠ°ΡΡΠΈΠ², Π΅ΡΠ»ΠΈ a ΡΠΆΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ choose(a, (b0, ..., bn)) Π‘ΠΎΠ·Π΄Π°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ² Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², Π²Π·ΡΡΡΡ ΠΏΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌ ΠΈΠ· a (ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΎΡ 0 Π΄ΠΎ n Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ). Π€ΠΎΡΠΌΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² a, b1, β¦, bn Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ clip(a, a_min, a_max) ΠΠ±ΡΡΠ±Π°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° a ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ Π½Π°Ρ ΠΎΠ΄ΠΈΠ»ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΈΠ· a_min ΠΈ a_max ΠΏΠΎΡΠ»Π΅ΠΌΠ΅Π½ΡΠ½ΠΎ compress(cond, a[, axis]) ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ² ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ· ΡΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π° a, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ cond ΠΈΡΡΠΈΠ½Π½ΠΎ (Π½Π΅ Π½ΡΠ»Ρ) concatenate(a[, axis]) Π‘ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π΄Π²ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² (ΠΊΠΎΠ½ΠΊΠ°ΡΠ΅Π½Π°ΡΠΈΡ) ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ axis (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ β ΠΏΠΎ Π½ΡΠ»Π΅Π²ΠΎΠΉ) convolve(a, b[, mode]) Π‘Π²Π΅ΡΡΠΊΠ° Π΄Π²ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ². ΠΡΠ³ΡΠΌΠ΅Π½Ρ mode ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ 0, 1 ΠΈΠ»ΠΈ 2 cross_correlate(a, b[, mode]) ΠΠ·Π°ΠΈΠΌΠ½Π°Ρ ΠΊΠΎΡΡΠ΅Π»ΡΡΠΈΡ Π΄Π²ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ². ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ mode ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ 0, 1 ΠΈΠ»ΠΈ 2 cumproduct(a[, axis]) ΠΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ axis ΠΌΠ°ΡΡΠΈΠ²Π° a Ρ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠΌΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌΠΈ cumsum(a[, axis]) Π‘ΡΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Ρ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠΌΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌΠΈ diagonal(a[, k[, axis1[, axis2]]]) ΠΠ·ΡΡΠΈΠ΅ kβΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ ΠΌΠ°ΡΡΠΈΠ²Π° a Π² ΠΏΠ»ΠΎΡΠΊΠΎΡΡΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ axis1 ΠΈ axis2 dot(a, b) ΠΠ½ΡΡΡΠ΅Π½Π½Π΅Π΅ (ΠΌΠ°ΡΡΠΈΡΠ½ΠΎΠ΅) ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ². ΠΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ: innerproduct(a, swapaxes(b, -1, -2)), Ρ.Π΅. Ρ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΌΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ, ΠΊΠ°ΠΊ ΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΌΠ°ΡΡΠΈΡ dump(obj, file) ΠΠ°ΠΏΠΈΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° a (Π² Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΌ Π²ΠΈΠ΄Π΅) Π² ΠΎΡΠΊΡΡΡΡΠΉ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ file. Π€Π°ΠΉΠ» Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΎΡΠΊΡΡΡ Π² Π±ΠΈΠ½Π°ΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅. Π ΡΠ°ΠΉΠ» ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΏΠΎΠ΄ΡΡΠ΄ dumps(obj) Π‘ΡΡΠΎΠΊΠ° Ρ Π΄Π²ΠΎΠΈΡΠ½ΡΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ° obj fromfunction(f, dims) Π‘ΡΡΠΎΠΈΡ ΠΌΠ°ΡΡΠΈΠ², ΠΏΠΎΠ»ΡΡΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΈ f(), Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΠΊΠΎΡΠΎΡΠΎΠΉ Π²ΡΡΡΡΠΏΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΡΠ΅ΠΆΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ². Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ΠΌ Π΄Π»Ρ f(*tuple(indices(dims))) fromstring(s[, count[, type]]) Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π±ΠΈΠ½Π°ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ , Ρ ΡΠ°Π½ΡΡΠΈΡ ΡΡ Π² ΡΡΡΠΎΠΊΠ΅ identity(n) ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π΄Π²ΡΠΌΠ΅ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² ΡΠΎΡΠΌΡ (n, n) indices(dims[, type]) ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, indices([2, 2])[1] Π΄Π°Π΅Ρ Π΄Π²ΡΠΌΠ΅ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² [[0, 1], [0, 1]]. innerproduct(a, b) ΠΠ½ΡΡΡΠ΅Π½Π½Π΅Π΅ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΄Π²ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² (ΠΏΠΎ ΠΎΠ±ΡΠ΅ΠΌΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ). ΠΠ»Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ a.shape[-1] Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠ°Π²Π΅Π½ b.shape[-1]. Π€ΠΎΡΠΌΠ° ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° Π±ΡΠ΄Π΅Ρ a.shape[:-1] + b.shape[:-1]. ΠΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΏΡΠΎΠΏΠ°Π΄Π°ΡΡΠ΅Π³ΠΎ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠΏΠ°ΡΠ½ΠΎ ΡΠΌΠ½ΠΎΠΆΠ°ΡΡΡΡ ΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΡΠΈΠ΅ΡΡ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ ΡΡΠΌΠΌΠΈΡΡΡΡΡΡ load(file) Π§ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈΠ· ΡΠ°ΠΉΠ»Π° file. Π€Π°ΠΉΠ» Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΎΡΠΊΡΡΡ Π² Π±ΠΈΠ½Π°ΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ loads(s) ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ Π±ΠΈΠ½Π°ΡΠ½ΠΎΠΌΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ, Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡ Π² ΡΡΡΠΎΠΊΠ΅ nonzero(a) ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π½Π΅Π½ΡΠ»Π΅Π²ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° ones(shape[, type]) ΠΠ°ΡΡΠΈΠ² ΠΈΠ· Π΅Π΄ΠΈΠ½ΠΈΡ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΡΠΎΡΠΌΡ shape ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΈΠΏΠ° type outerproduct(a, b) ΠΠ½Π΅ΡΠ½Π΅Π΅ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ a ΠΈ b product(a[, axis]) ΠΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ axis ΠΌΠ°ΡΡΠΈΠ²Π° a put(a, indices, b) ΠΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΡΡΡΠΌ ΠΌΠ°ΡΡΠΈΠ²Π°, a[n] = b[n] Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² indices putmask(a, mask, b) ΠΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ a ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ· b, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ ΠΌΠ°ΡΠΊΠ° mask ΠΈΠΌΠ΅Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΡΡΠΈΠ½Π° ravel(a) ΠΡΠ΅Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° Π² ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΡΠΉ. ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ reshape(a, (-1,)) repeat(a, n[, axis]) ΠΠΎΠ²ΡΠΎΡΡΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° a n ΡΠ°Π· ΠΏΠΎ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ axis reshape(a, shape) ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ² Π½ΡΠΆΠ½ΠΎΠΉ ΡΠΎΡΠΌΡ (Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° Π½Π΅ ΡΠΎΠ·Π΄Π°Π΅Ρ). ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌ ΠΈ Π½ΠΎΠ²ΠΎΠΌ ΠΌΠ°ΡΡΠΈΠ²Π°Ρ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ resize(a, shape) ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ² Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ ΡΠΎΡΠΌΠΎΠΉ shape. Π Π°Π·ΠΌΠ΅Ρ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° Π½Π΅ Π²Π°ΠΆΠ΅Π½ searchsorted(a, i) ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΈΠ· i Π½Π°ΠΉΡΠΈ ΠΌΠ΅ΡΡΠΎ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ a. ΠΠ°ΡΡΠΈΠ² a Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΡΠΌ ΠΈ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΡΠΌΡ ΠΌΠ°ΡΡΠΈΠ²Π° i shape(a) ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΎΡΠΌΡ ΠΌΠ°ΡΡΠΈΠ²Π° a sometrue(a[, axis]) ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΠΠ ΠΏΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ axis ΠΌΠ°ΡΡΠΈΠ²Π° a sort(a[, axis]) Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ sum(a[, axis]) Π‘ΡΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ axis ΠΌΠ°ΡΡΠΈΠ²Π° a swapaxes(a, axis1, axis1) Π‘ΠΌΠ΅Π½Π° ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ (ΡΠ°ΡΡΠ½ΡΠΉ ΡΠ»ΡΡΠ°ΠΉ ΡΡΠ°Π½ΡΠΏΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ) take(a, indices[, axis]) ΠΡΠ±ΠΎΡ ΡΠ°ΡΡΠ΅ΠΉ ΠΌΠ°ΡΡΠΈΠ²Π° a Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² indices ΠΏΠΎ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ axis trace(a[, k[, axis1[, axis2]]]) Π‘ΡΠΌΠΌΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π²Π΄ΠΎΠ»Ρ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ, ΡΠΎ Π΅ΡΡΡ add.reduce(diagonal(a, k, axis1, axis2)) transpose(a[, axes]) ΠΠ΅ΡΠ΅ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ axes, Π»ΠΈΠ±ΠΎ, Π΅ΡΠ»ΠΈ axes Π½Π΅ Π·Π°Π΄Π°Π½Ρ β ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡ Π² ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅ where(cond, a1, a2) ΠΡΠ±ΠΎΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π½Π° ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ cond ΠΈΠ· a1 (Π΅ΡΠ»ΠΈ Π½Π΅ Π½ΡΠ»Ρ) ΠΈ a2 (ΠΏΡΠΈ Π½ΡΠ»Π΅) ΠΏΠΎΡΠ»Π΅ΠΌΠ΅Π½ΡΠ½ΠΎ. Π Π°Π²Π½ΠΎΡΠΈΠ»Π΅Π½ choose(not_equal(cond, 0), (y, x)). Π€ΠΎΡΠΌΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²βΠ°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² a1 ΠΈ a2 Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ zeros(shape[, type]) ΠΠ°ΡΡΠΈΠ² ΠΈΠ· Π½ΡΠ»Π΅ΠΉ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΡΠΎΡΠΌΡ shape ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΈΠΏΠ° typeΠ ΡΡΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΈΠΏΠ° type ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Π½ΡΠ΅ Π²ΡΡΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ: Int, Float ΠΈ Ρ.ΠΏ.