Преобразование массива NumPy в список
Объекты [np.array] в NumPy можно преобразовывать в списки с помощью функции tolist(). Функция tolist() не принимает никаких аргументов. Если массив одномерный, она возвращает список с элементами массива. Для многомерного массива возвращается вложенный список.
Преобразование одномерного массива NumPy в список
Для примера давайте создадим одномерный массив:
import numpy as np # 1d array to list arr_1 = np.array([1, 2, 3]) print(f'NumPy Array:\n')
Данный код вернет такой результат:
NumPy Array: [1 2 3]
А теперь попробуем применить функцию tolist():
import numpy as np # 1d array to list arr_1 = np.array([1, 2, 3]) print(f'NumPy Array:\n') list_1 = arr_1.tolist() print(f'List: ')
Новый код вернет:
List: [1, 2, 3]
Как видите, массив был преобразован в список.
Преобразование многомерного массива NumPy в список
Давайте теперь построим многомерный массив:
import numpy as np # 2d array to list arr_2 = np.array([[1, 2, 3], [4, 5, 6]]) print(f'NumPy Array:\n')
Этот код выведет следующий массив:
NumPy Array: [[1 2 3] [4 5 6]]
А теперь давайте применим функцию tolist():
import numpy as np # 2d array to list arr_2 = np.array([[1, 2, 3], [4, 5, 6]]) print(f'NumPy Array:\n') list_2 = arr_2.tolist() print(f'List: ')
Этот код выведет такой результат:
List: [[1, 2, 3], [4, 5, 6]]
Массив был преобразован из скаляров numpy в скаляры Python.
Заключение
В этой статье мы показали, как использовать функцию tolist() для преобразования объектов np.array в списки. Функцию можно применять как к одномерным, так и к многомерным массивам.
Читайте также:
- Документация API
- Обнаружение и распознавание лиц на фотографиях
Как преобразовать список в массив NumPy (с примерами)
Вы можете использовать следующий базовый синтаксис для преобразования списка в Python в массив NumPy:
import numpy as np my_list = [1, 2, 3, 4, 5] my_array = np.asarray (my_list)
В следующих примерах показано, как использовать этот синтаксис на практике.
Пример 1: преобразование списка в массив NumPy
Следующий код показывает, как преобразовать список в Python в массив NumPy:
import numpy as np #create list of values my_list = [3, 4, 4, 5, 7, 8, 12, 14, 14, 16, 19] #convert list to NumPy array my_array = np.asarray (my_list) #view NumPy array print(my_array) [ 3 4 4 5 7 8 12 14 14 16 19] #view object type type (my_array) numpy.ndarray
Обратите внимание, что вы также можете использовать аргумент dtype , чтобы указать определенный тип данных для нового массива NumPy при выполнении преобразования:
import numpy as np #create list of values my_list = [3, 4, 4, 5, 7, 8, 12, 14, 14, 16, 19] #convert list to NumPy array my_array = np.asarray (my_list, dtype=np.float64 ) #view data type of NumPy array print(my_array. dtype ) float64
Пример 2: преобразование списка списков в массив массивов NumPy
В следующем коде показано, как преобразовать список списков в массив массивов NumPy:
import numpy as np #create list of lists my_list_of_lists = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] #convert list to NumPy array my_array = np.asarray (my_list_of_lists) #view NumPy array print(my_array) [[1 2 3] [4 5 6] [7 8 9]]
Затем мы можем использовать функцию формы , чтобы быстро получить размеры нового массива массивов:
print(my_array. shape ) (3, 3)
Это говорит нам о том, что массив массивов NumPy имеет три строки и три столбца.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные преобразования данных в Python:
Как преобразовать массив NumPy в список в Python (с примерами)
Вы можете использовать следующий базовый синтаксис для преобразования массива NumPy в список в Python:
my_list = my_array. tolist ()
В следующих примерах показано, как использовать этот синтаксис на практике.
Пример 1. Преобразование одномерного массива в список
В следующем коде показано, как преобразовать одномерный массив NumPy в список в Python:
import numpy as np #create NumPy array my_array = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) #convert NumPy array to list my_list = my_array. tolist () #view list print(my_list) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] #view object type type (my_list) list
Пример 2. Преобразование многомерного массива в список
В следующем коде показано, как преобразовать многомерный массив NumPy в список в Python:
import numpy as np #create NumPy array my_array = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]]) #convert NumPy array to list my_list = my_array. tolist () #view list print(my_list) [[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]] #view object type type (my_list) list
Пример 3. Преобразование многомерного массива в плоский список
В следующем коде показано, как преобразовать многомерный массив NumPy в плоский список в Python:
import numpy as np #create NumPy array my_array = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]]) #convert NumPy array to flattened list my_list = my_array. flatten().tolist () #view list print(my_list) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] #view object type type (my_list) list
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные преобразования в Python:
Как преобразовать массив в arraylist java
Для преобразования массива в ArrayList можно использовать метод Arrays.asList() . Этот метод преобразует массив в список фиксированного размера, т.е. нельзя добавлять или удалять элементы из списка.
String[] arr = "apple", "banana", "orange">; ListString> list = Arrays.asList(arr);
Если вы захотите изменить этот список, то возникнет исключение UnsupportedOperationException
Если вы хотите иметь возможность изменять размер списка, то нужно создать новый список и добавить в него элементы из массива:
String[] arr = "apple", "banana", "orange">; ListString> list = new ArrayList<>(Arrays.asList(arr));
Теперь list является динамическим списком, который можно изменять.