ravel python numpy

проекты Python Программирование и разработка

Поскольку numpy — это стандартная библиотека Python, которая работает с высокоуровневыми математическими операциями, такими как массивы и матрицы, с эффективными вычислениями. Он имеет встроенную функцию для работы с массивами. В этой статье будет подробно рассмотрена одна из функций, поддерживаемых numpy, которая называется функцией NumPy.ravel().

Он возвращает непрерывный плоский массив, что означает, что он изменяет двумерный массив или многомерный массив на одномерный массив того же типа, что и входной массив. Давайте рассмотрим пример реализации этой функции ravel(), как она сглаживает массивы по-разному.

Все примеры выполняются в терминале spyder. Обратите внимание, что нам нужно импортировать модуль NumPy для доступа к этой функции ravel().

Синтаксис numpy.ravel()

Синтаксис, используемый в функции numpy.ravel(), выглядит следующим образом:

# Numpy.ravel(z , order=’c’)

Параметр передан из numpy.ravel()

В основном, в эту функцию передаются два параметра: «z» и «order». «Z» — это входной массив, который изменяется в непрерывном плоском массиве или в одномерном массиве. Элементы массива расположены в порядке, указанном параметром «порядок», и упакованы в одномерный массив.

Этот порядок является необязательным параметром, который принимает три аргумента: C, F и K. Если мы устанавливаем порядок как C, массив выравнивается по строкам, и по умолчанию берется параметр «C». Если мы установим «F», тогда массив станет сглаженным по столбцам. С другой стороны, он устанавливается в порядке «K», который сглаживает массив в том же порядке, в котором элементы появляются в памяти.

Пример 1

В этом примере у нас есть двумерный массив в качестве входного массива, имеющего разные значения, с переменной, которой присвоено имя «arr_1». Затем мы вызовем функцию arr_1.ravel(), чтобы сгладить массив в другой переменной arr_2.

Мы можем иметь входные значения массива и сглаживать значения массива на экране консоли с помощью операторов печати.

import numpy as np

arr_1= np.array([[, —8, 3], [15, 2, 1]])

arr_2=arr_1.ravel()

print(«Displaying input array :\n«,arr_1)

print(«Displaying output array:\n«,arr_2)

Наконец, у нас есть преобразованный вывод двумерного массива в одномерный массив ниже.

Наконец, у нас есть преобразованный вывод двумерного

Пример 2

Здесь в примере мы покажем, что функция ravel() эквивалентна функции reshape(). Во-первых, мы создали 2D-массив из функции массива np.array(), а затем присвоили my_arr.ravel() переменной output_arr, которая содержит плоский массив; после этого мы напечатали как входные массивы, так и выходной массив.

Читайте также:  Гибкий дизайн API: создание хуков (Hooks) для конвейера PHP API

Наконец мы применили my_arr.reshape(-1) к переменной reshape_arr. Мы напечатали массив reshape и массив функции ravel().

import numpy as np

my_arr = np.array([[99 ,15 ,56], [7, 63, —54]])

output_arr=my_arr.ravel()

print(«Displaying input array :\n «,my_arr)

print(«Displaying input array :\n «,output_arr)

reshape_arr = my_arr.reshape(1)

print(«Displaying reshape array : \n«, my_arr)

reshape_arr= мой_обр. reshape ( −1 ) print ( «Отображение массива изменения формы: \ n », my_arr )

Поскольку мы изменили форму массива и сгладили массив из функции ravel(), результат показан на снимке экрана ниже.

Поскольку мы изменили форму массива и сгладили массив из фу

Пример 3

В этом конкретном примере мы применяем функцию numpy.ravel() с порядком «F», который установит 2D-массив в 1D-массив с основными столбцами. У нас есть 2D-массив в переменной ’F_arr’ и функция F_arr.ravel() с порядком, равным ’F’ в другой переменной, представленной как F_output, которая будет печатать вывод как основной столбец.

Наконец, у нас есть печатный оператор F_arr в качестве входного массива и массив F_output в качестве выходного массива.

импортировать numpy как np

import numpy as np

F_arr = np.array([[11 ,32, 23], [4 ,58 ,88]])

F_output=F_arr.ravel(‘F’)

print(«Displaying input array :\n «,F_arr)

print(«Displaying output array :\n «,F_output)

Вывод из приведенного выше кода в массиве по столбцам показан ниже.

Вывод из приведенного выше кода в массиве по столб

Пример 4

В этом примере используется «C» в качестве параметра порядка, который будет преобразовывать 2D-массив в 1D-массив, который является основным по строкам. Мы создали 2D-массив, который содержит различные значения массива, представленные в виде переменной x_array.

После этого у нас есть функция x_array.ravel(), принимающая параметр порядка как «C», который даст нам 1D-массив в качестве основной строки.

import numpy as np

x_array = np.array([[ ,4 ,8], [1 ,5 ,9]])

y_array=x_array.ravel(‘C’)

print(«This is an input array :\n «,x_array)

print(«This is an output array :\n «,y_array)

В качестве параметра порядка установлено значение «C», что дает нам выходной массив в сглаженный массив.

Читайте также:  Как перевернуть строку в Java

В качестве параметра порядка установлено значение «C»

Пример 5

В этом примере возьмите параметр порядка и установите для него значение «k», чтобы узнать, как работает этот параметр порядка. Для этого мы должны взять двумерный массив и сохранить значение массива в переменной «k_array» из функции массива.

Затем вызов функции k_arr.ravel() и передача порядка, установленного как «k», в качестве аргумента, который вернет одну строку строки из 2D-массива. Мы можем увидеть входной массив и результат из массива с порядком, установленным как «k», через оператор печати. Мы распечатали массивы.

import numpy as np

k_array = np.array([[4 , 14 ,44], [5 ,15, 55]])

k_output=k_array.ravel(‘K’)

print(«Here is input array :\n«,k_array)

print(«Here is output array :\n«,k_output)

Наконец, мы получили выходной массив в виде сглаженного массива. Мы вывели скриншот ниже из приведенного выше кода.

Наконец, мы получили выходной массив в виде сглажен

Пример 6

Последний пример — использование reshape с заменой осей. Давайте реализуем этот пример на этот раз; мы установили диапазон массива на значение 10 из вызова функции np.arange(). Это поможет в функции reshape(). Поскольку функция reshape() изменит количество измерений без изменения данных.

Мы также вызвали функцию swapaxes(), которая будет менять оси с 0 на 1, затем мы сохранили функцию np.ravel(), которая принимает входной массив и упорядочивает его как «C» в переменной «p». Мы взяли разные переменные, чтобы установить порядок {C, K, F} как p, q и r. Печать переменной, которая будет давать разные результаты для разных наборов заказов.

import numpy as np

my_array= np.arange(10).reshape(2,5).swapaxes(,1)

p=np.ravel(my_array, order=‘C’)

q=np.ravel(my_array, order=‘K’)

r=np.ravel(my_array, order=‘F’)

print(«Output Array :\n«,my_array)

print(«Output Array of C-order:\n«,p)

print(«Output Array of K-order:\n«,q)

print(«Output Array of F_order:\n«,r)

У нас есть другой вывод ниже на экране.

ас есть другой вывод ниже на экр

Заключение

Мы подробно обсудили все параметры порядка функции ravel(). Мы видели, как эта функция возвращает сглаженный массив из двумерного массива на другом примере. Надеюсь, эти иллюстрации помогут вам лучше понять эту концепцию.

Оцените статью
bestprogrammer.ru
Добавить комментарий