Как из многомерного массива сделать одномерный в numpy?

Пользователь

от elda , в категории: Python , 9 месяцев назад

Как из многомерного массива сделать одномерный в numpy?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от wilburn , 9 месяцев назад

@elda 

Чтобы сделать многомерный массив в numpy одномерным, вы можете использовать функцию flatten:

1
2
3
4
5
6
import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])
flattened_arr = arr.flatten()

print(flattened_arr)  # [1 2 3 4 5 6]


Если вы хотите сохранить изменения в исходном массиве, вы можете использовать метод ravel:

1
2
3
4
5
6
import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])
arr = arr.ravel()

print(arr)  # [1 2 3 4 5 6]


Оба метода работают таким образом, что они преобразуют многомерный массив в одномерный, как бы "расправляя" его в одну линию. Однако flatten создает новый массив, а ravel изменяет исходный массив.