В прошлый раз мы говорили про создание NumPy-массивов в Python разными способами. Сегодня поговорим про основные функции работы с этими массивами. Читайте далее про особенности работы с NumPy-массивами в популярном языке Python.
Какие основные функции существуют для работы с NumPy-массивами
NumPy — это библиотека языка Python, которая добавляет поддержку больших многомерных массивов и матриц, а также высокоуровневых (и очень быстро выполняющихся) математических функций для операций с этими массивами. Среди таких функций известны такие, которые отвечают за:
- нахождение минимума, максимума и суммы элементов массива (унарные операции);
- изменение формы массива;
- копирование значений массива;
- объединение массивов.
Каждую из вышеприведенных операций мы подробнее рассмотрим на практических примерах далее.
Особенности работы основных функций NumPy-массивов: несколько практических примеров
Среди унарных (операции, которые возвращают один результат) операций с массивами NumPy известны такие, как сумма элементов массива, а также нахождение минимального и максимального элемента:
b = np.array([[1.5, 2, 3], [4, 5, 6]]) np.sum(b) #21.5 сумма элементов b.min() #1.5 минимум b.max() #6.0 макситмум
Можно также находить минимум и максимум по строкам или столбцам многомерных массивов (матриц). Ниже представлен фрагмент кода:
b.max(axis=1) # максимум по строке (array([3., 6.])) b.max(axis=0) # максимум по столбцу (array([4., 5., 6.])) b.min(axis=1) # минимум по строке (array([1.5, 4. ])) b.min(axis=0) # минимум по столбцу (aarray([1.5, 2. , 3. ]))
Для изменения формы (например преобразование в многомерный массив или наоборот) массива существует метод reshape()
:
b = np.array([[1.5, 2, 3], [4, 5, 6]]) b.reshape((-3,2)) # array([[1.5, 2. ], [3. , 4. ], [5. , 6. ]])
Также существует возможность создавать глубокие копии массивов. Стоит отметить, что при этом создается копия только значений, объекты при этом не копируются (и их ссылки тоже), а создаются заново:
b = np.array([[1.5, 2, 3], [4, 5, 6]]) d = b.copy() d is a # False, так как это 2 разных объекта с разными ссылками в памяти d # array([[1.5, 2. , 3. ], [4. , 5. , 6. ]]) - значение такое же
Массивы также можно объединять по вертикали и по горизонтали. За это отвечают методы hstack()
и vstack()
соответственно:
a = np.array([[1, 2], [3, 4]]) b = np.array([[5, 6], [7, 8]]) np.vstack((a, b)) # по вертикали (array([[1, 2], [3, 4], [5, 6], [7, 8]])) np.hstack((a, b)) # по горизонтали (array([[1, 2, 5, 6], [3, 4, 7, 8]]))
Таким образом, благодаря обширным возможностям библиотеки NumPy, в Python существует весьма удобная возможность работы с массивами. Это делает Python универсальным и надежным средством для работы с производительными приложениями, а также с Big Data обработкой.
Computer vision на Python
Код курса
VISI
Ближайшая дата курса
18 ноября, 2024
Продолжительность
40 ак.часов
Стоимость обучения
90 000 руб.
Освоить Python на профессиональном уровне в разработчика различных приложений и прочих прикладных областях Data Science вы сможете на практических курсах по Python в нашем лицензированном учебном центре обучения и повышения квалификации ИТ-специалистов в Москве:
- PREP: Подготовка данных для Data Mining на Python
- Разработка и внедрение ML-решений
- Графовые алгоритмы. Бизнес-приложения
- Нейронные сети на Python
- NLP с Python
Источники