🧩 Как ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ 2 массива numpy: простоС руководство с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ πŸš€

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΄Π²Π° массива Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ numpy, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ numpy.concatenate. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

import numpy as np

array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])

result = np.concatenate((array1, array2))

print(result)

Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ создаСт Π΄Π²Π° массива, array1 ΠΈ array2. Π—Π°Ρ‚Π΅ΠΌ ΠΎΠ½ΠΈ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ numpy.concatenate, которая Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ массив, содСрТащий элСмСнты ΠΎΠ±ΠΎΠΈΡ… Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… массивов. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ сохраняСтся Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ result. НаконСц, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выводится Π½Π° экран.

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ 2 массива numpy

Π’ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ numpy, объСдинСниС Π΄Π²ΡƒΡ… массивов ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ выполняСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ concatenate, stack ΠΈΠ»ΠΈ hstack. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ исслСдуСм ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· этих ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ прСдоставим ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π° для объСдинСния Π΄Π²ΡƒΡ… массивов numpy.

ΠœΠ΅Ρ‚ΠΎΠ΄ concatenate

ΠœΠ΅Ρ‚ΠΎΠ΄ concatenate позволяСт ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ массива вдоль ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ оси. Бинтаксис этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

numpy.concatenate((array1, array2, ...), axis=0)

Π“Π΄Π΅:
- array1, array2, ... - массивы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ
- axis - ось, вдоль ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ массивы (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 0)

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅ ΠΌΡ‹ объСдиняСм Π΄Π²Π° массива ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ оси (axis=1):

import numpy as np

array1 = np.array([[1, 2], [3, 4]])
array2 = np.array([[5, 6]])

result = np.concatenate((array1, array2), axis=1)

print(result)
# Π’Ρ‹Π²ΠΎΠ΄: 
# [[1 2 5 6]
#  [3 4 0 0]]

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Π½Ρ‹ΠΉ массив, Π³Π΄Π΅ Π²Ρ‚ΠΎΡ€ΠΎΠΉ массив добавляСтся справа ΠΎΡ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ массива.

ΠœΠ΅Ρ‚ΠΎΠ΄ stack

ΠœΠ΅Ρ‚ΠΎΠ΄ stack позволяСт ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΄Π²Π° массива, создавая Π½ΠΎΠ²ΡƒΡŽ ось. Бинтаксис этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

numpy.stack((array1, array2, ...), axis=0)

Π“Π΄Π΅:
- array1, array2, ... - массивы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ
- axis - ось, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ массивы (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 0)

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅ ΠΌΡ‹ объСдиняСм Π΄Π²Π° массива ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ оси (axis=0):

import numpy as np

array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])

result = np.stack((array1, array2), axis=0)

print(result)
# Π’Ρ‹Π²ΠΎΠ΄: 
# [[1 2 3]
#  [4 5 6]]

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π½ΠΎΠ²Ρ‹ΠΉ массив с Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΠΎΠΉ осью, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит значСния ΠΈΠ· ΠΎΠ±ΠΎΠΈΡ… массивов.

ΠœΠ΅Ρ‚ΠΎΠ΄ hstack

ΠœΠ΅Ρ‚ΠΎΠ΄ hstack позволяСт ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ массива Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎ. Бинтаксис этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

numpy.hstack((array1, array2, ...))

Π“Π΄Π΅:
- array1, array2, ... - массивы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅ ΠΌΡ‹ объСдиняСм Π΄Π²Π° массива Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎ:

import numpy as np

array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])

result = np.hstack((array1, array2))

print(result)
# Π’Ρ‹Π²ΠΎΠ΄: [1 2 3 4 5 6]

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π½ΠΎΠ²Ρ‹ΠΉ массив, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ значСния ΠΈΠ· Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ массива Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π² ΠΊΠΎΠ½Π΅Ρ† ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ массива.

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрСли Ρ‚Ρ€ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° - concatenate, stack ΠΈ hstack - для объСдинСния Π΄Π²ΡƒΡ… массивов numpy. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· этих ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈΠΌΠ΅Π΅Ρ‚ свою спСцифику ΠΈ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для Ρ€Π°Π·Π½Ρ‹Ρ… ситуаций. НадСюсь, прСдоставлСнныС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Π²Π°ΠΌ Π² Ρ€Π°Π±ΠΎΡ‚Π΅ с массивами numpy.

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

#6. ОбъСдинСниС ΠΈ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ массивов | NumPy ΡƒΡ€ΠΎΠΊΠΈ

β–Ί 4. Π”ΠžΠ‘ΠΠ’Π›Π•ΠΠ˜Π• ΠžΠ‘Π•Π™. ОбъСдинСниС ΠΈ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ массивов | ΠšΡƒΡ€Ρ ΠΏΠΎ Numpy.

#4. Бвойства ΠΈ прСдставлСния массивов, созданиС ΠΈΡ… ΠΊΠΎΠΏΠΈΠΉ | NumPy ΡƒΡ€ΠΎΠΊΠΈ

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

🧩 Как ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ 2 массива numpy: простоС руководство с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ πŸš€