Автор оригинала: Team Python Pool.
Вступление
В Python есть много способов повторной структуре массива в соответствии с необходимостью человека. Но есть некоторые случаи, когда нам нужен одномерный массив, а не Двумерный массив. Этот тип проблемной Numpy Library предоставляет функцию, с помощью которой мы можем преобразовать двумерный массив в одномерный массив , то есть, numpy.ndarray.ravel () Функция Travel () в Numpy Library является одной из наиболее важных и обычно используемых функций, которые помогают разваливать данные, которые были представлены пользователем.
Что такое метод Numpy Ravel ()?
Numpy.ndarray.ravel () используется, когда возвращать непрерывные сплющенные массива. Это означает 1-D массив со всеми входными элементами и с тем же типом, что и он.
Синтаксис Numpy Ravel
numpy.ravel(order = 'C')
Параметры
Заказ: {‘C,’ ‘F,’ ‘A,’ ‘K’} – Это необязательна функция на входе. Все элементы входного массива прочитаны в соответствии с порядком индекса. Во-первых, если мы используем это означает, что заказ индекса будет соревнователем. Заказ в памяти медленнее на первом индексе и быстрее всего на последнем индексе.
Во-вторых, если мы используем это означает, что заказ индекса будет основным столбцом. Он также известен как «Заказ в стиле Fortran», который изменяет самый быстрый по первому индексу и самым медленным в последнем индексе. Помните, что оба не учитывают макет памяти массива и относятся только к порядку индексации оси.
В-третьих, если мы используем это означает чтение и запись элементов массива в порядке индекса в стиле Fortran. Если массив является крестуным смещением в памяти, в противном случае он возьмет C-подобный порядок.
В-четвертых, если мы используем Он прочитает элементы в том порядке, в котором они происходят в памяти. За исключением изменения данных. По умолчанию заказ всегда устанавливается на «C».
Возвращаемое значение Numpy Ravel
Массив с тем же типом, что и входной массив с порядком согласно вашему требованию.
Примеры метода Numpy Ravel
Давайте понять Numpy Ravel () Функция The Numpy Module в деталях с помощью примеров:
1. Использование 2-D массива в функции Numpy Ravel ()
В этом примере мы импортируем модуль NUMPY как NP. Затем мы сделаем входной массив в качестве 2-D массива. Наконец, мы будем применять функцию numpy Ravel () для преобразования 2-D массива в 1-D массив.
#python program using a 2-d array #Import numpy library import numpy as np arr = np.array([[1,4,7], [2,5,8]]) output=arr.ravel() print("Input Array : ",arr) print("Output Array : ",output)
Выход:
Input Array : [[1 4 7] [2 5 8]] Output Array : [1 4 7 2 5 8]
Объяснение:
Здесь, во-первых, мы импортировали модуль Numpy с именем псевдонимов как NP. Во-вторых, мы создали 2-D массив, используя функцию массива. В-третьих, мы создали переменную как вывод и назначили ее Функция Ravel (). Наконец, мы напечатали значение вывода массива.
2. Чтобы показать, что numpy.ravel () эквивалентен изменить
В этом примере мы будем импортировать NUMPY модуль как имя псевдонима NP. Затем мы сделаем входной массив в качестве 2-D массива. Наконец, мы будем применять функцию numpy Ravel () для преобразования 2-D массива в 1-D массив. И наконец, мы будем применять функцию array.reeshape ().
#python program using a 2-d array #Import numpy library import numpy as np arr = np.array([[1,4,7], [2,5,8]]) output=arr.ravel() print("Input Array : ",arr) print("Output Array : ",output) arr1 = arr.reshape(-1) print("Reshape output : ", arr1)
Выход:
Input Array : [[1 4 7] [2 5 8]] Output Array : [1 4 7 2 5 8] Reshape output : [1 4 7 2 5 8]
Объяснение:
Здесь, во-первых, мы импортировали модуль Numpy с именем псевдонимов как NP. Во-вторых, мы создали 2-D массив, используя функцию массива. В-третьих, мы создали переменную как вывод и назначили ее Функция Ravel (). В-четвертых, мы напечатали значение выходного массива. В-пятых, мы применили ARR. Функция Reshape (-1) и хранить значение в новом ARR1. Наконец, мы напечатали вывод функции Reshape и видели, что numpy.ravel () эквивалентен Array.Reshape ().
3. Используя в качестве параметра в функции Numpy Ravel ()
В этом примере мы импортируем модуль NUMPY как NP. Затем мы сделаем входной массив в качестве 2-D массива. Наконец, мы будем нанести функцию Numpy Ravel () с преобразованием 2-D массива в 1-D массив.
#python program using a 2-d array #Import numpy library #using order = 'F' import numpy as np arr = np.array([[1,2,3], [4,5,6]]) output=arr.ravel('F') print("Input Array : ",arr) print("Output Array : ",output)
Выход:
Input Array : [[1 2 3] [4 5 6]] Output Array : [1 4 2 5 3 6]
Объяснение:
Здесь, во-первых, мы импортировали модуль Numpy с именем псевдонимов как NP. Во-вторых, мы создали 2- D массив используя функцию массива. В-третьих, мы создали переменную в качестве вывода и назначали ее функцию Ravel (). В-четвертых, мы использовали заказ «F», чтобы распечатать вывод как основной столбец. Наконец, мы напечатали значение вывода массива.
4. Используя в качестве параметра в функции Numpy Ravel ()
В этом примере мы импортируем модуль NUMPY как NP. Затем мы сделаем входной массив в качестве 2-D массива. Наконец, мы будем нанести функцию Numpy Ravel () с преобразованием 2-D массива в 1-D массив.
#Import numpy library #using order = 'C' import numpy as np arr = np.array([[1,2,3], [4,5,6]]) output=arr.ravel('C') print("Input Array : ",arr) print("Output Array : ",output)
Выход:
Input Array : [[1 2 3] [4 5 6]] Output Array : [1 2 3 4 5 6]
Объяснение:
Здесь, во-первых, мы импортировали модуль Numpy с именем псевдонимов как NP. Во-вторых, мы создали 2-D массив, используя функцию массива. В-третьих, мы создали переменную в качестве вывода и назначали ее значение функции Ravel (). В-четвертых, мы использовали заказ «C», чтобы распечатать вывод как майор строки. Наконец, мы напечатали значение вывода массива.
5. Используя в качестве параметра в функции Numpy Ravel ()
В этом примере мы импортируем модуль NUMPY как NP. Затем мы сделаем входной массив в качестве 2-D массива. Наконец, мы будем нанести функцию Numpy Ravel () с преобразованием 2-D массива в 1-D массив.
#Import numpy library #using order = 'A' import numpy as np arr = np.array([[1,2,3], [4,5,6]]) output=arr.ravel('A') print("Input Array : ",arr) print("Output Array : ",output)
Выход:
Input Array : [[1 2 3] [4 5 6]] Output Array : [1 2 3 4 5 6]
Объяснение:
Здесь, во-первых, мы импортировали модуль Numpy с именем псевдонимов как NP. Во-вторых, мы создали 2-D массив, используя функцию массива. В-третьих, мы создали переменную в качестве вывода и назначали ее функцию Ravel (). В-четвертых, мы использовали заказ «A», чтобы распечатать вывод как майор строки. Наконец, мы напечатали значение вывода массива.
6. Используя в качестве параметра в функции Numpy Ravel ()
В этом примере мы импортируем модуль NUMPY как NP. Затем мы сделаем входной массив в качестве 2-D массива. Наконец, мы будем нанести функцию Numpy Ravel () с преобразованием 2-D массива в 1-D массив.
#Import numpy library #using order = 'K' import numpy as np arr = np.array([[1,2,3], [4,5,6]]) output=arr.ravel('K') print("Input Array : ",arr) print("Output Array : ",output)
Выход:
Input Array : [[1 2 3] [4 5 6]] Output Array : [1 2 3 4 5 6]
Объяснение:
Здесь, во-первых, мы импортировали модуль Numpy с именем псевдонимов как NP. Во-вторых, мы создали 2-D массив, используя функцию массива. В-третьих, мы создали переменную в качестве вывода и назначали ее функцию Ravel (). В-четвертых, мы использовали заказ «K», чтобы распечатать вывод как майор строки. Наконец, мы напечатали значение вывода массива.
7. Использование Reshigepe () с обмениванием оси
В этом примере мы импортируем модуль NUMPY как NP. Затем мы организуем массив с помощью функции Reshape и функции Swapaxes.
#import numpy library import numpy as np x = np.arange(18).reshape(3,3,2).swapaxes(1,2) y=np.ravel(x, order='C') z=np.ravel(x, order='K') m=np.ravel(x, order='A') print(x) print(y) print(z) print(m)
Выход:
[[[ 0 2 4] [ 1 3 5]] [[ 6 8 10] [ 7 9 11]] [[12 14 16] [13 15 17]]] [ 0 2 4 1 3 5 6 8 10 7 9 11 12 14 16 13 15 17] [ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17] [ 0 2 4 1 3 5 6 8 10 7 9 11 12 14 16 13 15 17]
Объяснение:
Здесь, во-первых, мы импортировали модуль Numpy с именем псевдонимов как NP. Во-вторых, мы организовали массив до 18, чтобы помочь функции Reshape () функции и Swapaxees (). В-третьих, мы применили функцию Ravel со всеми заказами и хранили их в новую переменную. Наконец, мы напечатали все переменные и видели разницу в выходе.
Разница между сглаженным () и Numpy Ravel ()
Эти обе функции используются для преобразования многомерного массива в одномерный массив. Но есть некоторые различия, через которые они отличаются самим собой.
Numpy Ravel ()
- Функция Numpy Ravel всегда возвращает ссылку на исходный массив.
- Это функция библиотеки.
- Равель быстрее, чем сплит () Отказ
- Если значение изменено, исходный массив также пострадал.
Numpy Flatten ()
- Flatten Method () всегда возвращает копию исходного массива.
- Это функция объекта NDARRAY.
- Это медленнее, чем Ravel, так как требуется больше памяти, чем Ravel ().
- Если значение изменяется, исходный массив не пострадал.
#flatten and ravel function in python example import numpy as np arr = np.array([[1,2,3], [4,5,6]]) print("Input Array : ",arr) print("Dimension of array : ",(arr.ndim)) print("\n") arr1 = arr.ravel() print("Ravel output : ",arr1) arr1[0] = 50 print("updated ravel array : ",arr1) print("Input array : ",arr) print("\n") arr2 = arr.flatten() print("Flatten output : ",arr2) arr2[0] = 100 print("Updated flatten array : ",arr2) print("Input array : ",arr)
Выход:
Input Array : [[1 2 3] [4 5 6]] Dimension of array : 2 Ravel output : [1 2 3 4 5 6] updated ravel array : [50 2 3 4 5 6] Input array : [[50 2 3] [ 4 5 6]] Flatten output : [50 2 3 4 5 6] Updated flatten array : [100 2 3 4 5 6] Input array : [[50 2 3] [ 4 5 6]]
Объяснение:
Во-первых, мы импортировали модуль NUMPY как NP. Во-вторых, мы предприняли входной массив и напечатали входную массив и измерение массива. В-третьих, мы применили функцию Ravel () и напечатали вывод функции Ravel (). Затем мы обновили значение и снова напечатали вывод Ravel и напечатал входной массив. Таким образом, мы можем легко увидеть изменения. То же самое сделано с функцией Flatten (), также обновила значение, но входной массив не меняется.
Заключение
В этом руководстве мы обсудили функцию The Ravel () The Numpy Module. Все параметры и их значения объясняются с помощью примеров подробно. Примеры помогут вам понять концепцию более точно. Вы можете использовать заказ согласно вашему требованию вывода одномерного массива.