Функция numpy.ravel() в Python с примерами
Функция NumPy ravel() в Python используется для возврата непрерывного сглаженного массива.
- Что такое функция NumPy ravel() в Python?
- Примеры функции NumPy ravel()
- 1) Использование функции NumPy ravel() для выравнивания массива
- 2) Сравнение функции ravel() и метода Flatten()
Что такое функция NumPy ravel() в Python?
Функция ravel() принимает массив и возвращает одномерный массив, содержащий элементы входного массива:
numpy.ravel(a, order='C')
В этом синтаксисе:
- a — это пустой массив. Это может быть любой объект, подобный массиву, например список. Объект, подобный массиву, — это объект, который можно преобразовать в массив numpy.
- order определяет порядок элементов. Ознакомьтесь с методом Flatten() для получения подробной информации о параметре order и его значениях.
Примеры функции NumPy ravel()
Давайте рассмотрим несколько примеров использования функции ravel().
1) Использование функции NumPy ravel() для выравнивания массива
В следующем примере функция ravel() используется для выравнивания двумерного массива:
import numpy as np a = np.array([[1, 2], [3, 4]]) b = np.ravel(a) print(b)
Выход:
[1 2 3 4]
Как это работает.
- Сначала создайте двумерный массив:
a = np.array([[1, 2], [3, 4]])
- Во-вторых, сгладьте массив с помощью функции ravel():
b = np.ravel(a)
- В-третьих, отобразите массив:
print(b)
2) Сравнение функции ravel() и метода Flatten()
Метод Flatten() создает копию входного массива, а функция ravel() создает представление массива. Ravel() создает копию массива только в случае необходимости. Например:
import numpy as np a = np.array([[1, 2], [3, 4]]) b = np.ravel(a) # change element at index 0 b[0] = 0 # show both b & a array print(b) print(a)
Как это работает.
- Сначала используйте функцию ravel(), чтобы создать представление массива a:
b = np.ravel(a)
- Во-вторых, измените индекс элемента 0 массива b на ноль:
b[0] = 0
- В-третьих, покажите оба массива a и b. Поскольку массив b представляет собой представление массива a, изменение массива b отражается в массиве a:
print(b) print(a)
Еще одно важное различие между методом Flatten() и функцией ravel() заключается в том, что вы можете вызвать метод Flatten() для ndarray, в то время как вы можете вызвать функцию ravel() для объекта, подобного массиву.