NumPy np.flatten ()

No-Code Low-Code против разработки программного обеспечения на заказ Программирование и разработка

Пакет NumPy предоставляет функцию flatten(), которая позволяет вернуть копию массива, свернутого в одномерный массив.

Синтаксис функции

Функция имеет элементарный синтаксис, как показано ниже:

ndarray.flatten(order=‘C’)

Параметры функции

Функция принимает только один параметр. Параметр порядка используется для определения порядка выравнивания массива.

Параметр заказа принимает следующие значения:

  • ‘C’ — указывает функции сгладить массив в порядке строк.
  • ’F’ — сгладить массив в порядке столбцов.
  • ’A’ — сгладить массив в порядке строк, если массив является непрерывным на Фортране, и в порядке столбцов, если в противном случае.
  • ’K’ — сгладить массив по порядку элементов (в памяти).

По умолчанию функция сортирует входной массив в порядке возрастания строк.

Возвращаемое значение

Затем функция вернет копию входного массива, но сглаженную до 1D.

Пример 1

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

# import numpy
import numpy as np
arr = np.array([[12,32,6], [3,45,23]])
flattened = arr.flatten()
print(f«original: {arr}»)
print(f«flattened: {flattened}»)

Приведенный выше код берет 2D-массив и сглаживает его в 1D-массив, как показано в выходных данных ниже:

original: [[12 32  6]
[ 3 45 23]]
flattened: [12 32  6  3 45 23]

Пример 2

Мы также можем применить ту же операцию к многомерному массиву. Код показан ниже:

arr_3d = np.array([[1,2,3], [0,4,5,], [9,4,6]])
flat = arr_3d.flatten()
print(f«original: {arr_3d}»)
print(f«flattened: {flat}»)

Это должно вернуть:

original: [[1 2 3]
[0 4 5]
[9 4 6]]
flattened: [1 2 3 0 4 5 9 4 6]

Пример 3

Давайте посмотрим, что произойдет, когда мы изменим параметр порядка на «F». Рассмотрим код, показанный ниже:

arr = np.array([[12,32,6], [3,45,23]])
flattened = arr.flatten(order=‘F’)
print(f«original: {arr}»)
print(f«flattened: {flattened}»)

В этом примере функция упорядочивает массив в порядке столбцов. Результирующий массив выглядит так:

original: [[12 32  6]
[ 3 45 23]]
flattened: [12  3 32 45  6 23]

Пример 4

Заказ через параметр «A» возвращает массив, как показано:

arr = np.array([[12,32,6], [3,45,23]])
flattened = arr.flatten(‘A’)
print(f«original: {arr}»)
print(f«flattened: {flattened}»)

Порядок «А» действует как «умный» вариант, который выбирает сортировку на основе типа массива. В приведенном выше примере функция выравнивает массив в порядке убывания строк.

original: [[12 32  6]
[ 3 45 23]]
flattened: [12 32  6  3 45 23]

Пример 5

Параметры ’K’ возвращают массив, как показано ниже:

arr = np.array([[12,32,6], [3,45,23]])
flattened = arr.flatten(‘K’)
print(f«original: {arr}»)
print(f«flattened: {flattened}»)

Выход:

original: [[12 32  6]
[ 3 45 23]]
flattened: [12 32  6  3 45 23]

Заключение

В статье мы рассмотрели функцию flatten в NumPy для сведения входного массива к одному измерению. С помощью примеров мы проиллюстрировали поведение функции при разных параметрах порядка.

Читайте также:  Как получить текущую дату в PHP?
Оцените статью
bestprogrammer.ru
Добавить комментарий