NumPy: Функції з масивами

Огляд функцій масиву NumPy

У Python ми не маємо вбудованої підтримки типу даних масиву. Але не хвилюйтеся; ми все ще можемо створювати масиви в Python, перетворюючи структури Python, такі як списки та кортежі, на масиви або використовуючи внутрішні об’єкти створення масиву numpy, як-от arrange, ones, nule тощо. У цьому конкретному дописі обговорюватимуться внутрішні функції масиву numpy для створення та роботи з масивами.

Створення масиву: Numpy надає нам кілька вбудованих функцій для створення та роботи з масивами з нуля. Типова функція масиву numpy для створення масиву виглядає приблизно так:


numpy.array(object, dtype=None, copy=True, order='K', subok=False, ndmin=0)


Тут усі атрибути, крім об’єктів, є необов’язковими. Тому не хвилюйтеся, навіть якщо ви не дуже розумієтеся на інших параметрах.


object: укажіть об’єкт, для якого потрібно створити масив

dtype: вкажіть потрібний тип даних масиву

copy: вкажіть, чи потрібно скопіювати масив чи ні

order: вкажіть порядок створення пам'яті

subok: вкажіть, чи бажаєте ви масив типу підкласу чи базового класу

ndmin: вказує розміри масиву


Існують різні способи створення масивів у NumPy.

Наприклад, ви можете створити масив із звичайного списку або кортежу Python за допомогою функції array. Тип результуючого масиву виводиться з типу елементів у послідовностях.

Часто елементи масиву спочатку невідомі, але відомий його розмір. Таким чином, NumPy пропонує кілька функцій для створення масивів із початковим вмістом-заповнювачем. Це зводить до мінімуму необхідність вирощування масивів, дорогу операцію.

Наприклад: np.nules, np.ones, np.full, np.empty тощо.


Для створення послідовностей чисел NumPy надає функцію, аналогічну діапазону, яка повертає масиви замість списків.

arange: повертає рівномірно розподілені значення в заданому інтервалі. step вказується розмір кроку.

linspace: повертає рівномірно розподілені значення в заданому інтервалі. num no. елементів повертається.

Зміна форми масиву: ми можемо використовувати метод reshape, щоб змінити форму масиву. Розглянемо масив форми (a1, a2, a3, …, aN). Ми можемо змінити форму та перетворити його на інший масив із формою (b1, b2, b3, …, bM). Єдина обов’язкова умова:

a1 x a2 x a3 … x aN = b1 x b2 x b3 … x bM . (тобто вихідний розмір масиву залишається незмінним.)

Flatten array: ми можемо використовувати метод flatten, щоб отримати копію масиву, згорнуту в один вимір. Він приймає аргумент порядку. Значення за замовчуванням — «C» (для порядку основних рядків). Використовуйте «F» для основного порядку стовпців.

Примітка. Тип масиву можна явно визначити під час створення масиву.


Знання основ індексування масиву є важливим для аналізу та маніпулювання об’єктом масиву. NumPy пропонує багато способів індексації масиву.


Нарізка: так само, як списки в Python, масиви NumPy можна нарізати. Оскільки масиви можуть бути багатовимірними, вам потрібно вказати зріз для кожного виміру масиву.

Індексація цілочисельного масиву: у цьому методі списки передаються для індексації для кожного виміру. Відображення відповідних елементів один до одного виконується для створення нового довільного масиву.

Логічне індексування масиву: цей метод використовується, коли ми хочемо вибрати елементи з масиву, які задовольняють певну умову.