Создание массивов NumPy в Python с примерами

Массив — это основная структура данных библиотеки NumPy. Массив NumPy представляет собой сетку значений одного типа, индексированную кортежем неотрицательных целых чисел.

Разберем, как создавать массивы NumPy в Python, включая одномерные, двумерные и трехмерные.

Все массивы являются экземплярами класса ndarray. Чтобы создать новый массив NumPy, вы используете функцию array() библиотеки NumPy.

Содержание

Создание одномерных массивов

В следующем примере функция array() используется для создания одномерного(1-D) массива:

import numpy as np

a = np.array([1, 2, 3])

print(type(a))
print(a)

Выход:

<class 'numpy.ndarray'>
[1 2 3]

Как это работает.

  • Сначала импортируйте библиотеку numpy как np:
import numpy as np
  • Во-вторых, создайте одномерный массив, передав список из трех целых чисел:
a = np.array([1, 2, 3])

Функция array() возвращает новый экземпляр типа ndarray. Таким образом, type(a) возвращает <class ‘numpy.ndarray’>.

Одномерный массив известен как вектор.

Получение размерности

Чтобы получить количество измерений массива, вы используете свойство ndim. В NumPy размеры называются осями. Например:

import numpy as np

a = np.array([1, 2, 3])

print(a.ndim)

Выход:

1

В этом примере свойство ndim возвращает единицу, как и ожидалось.

Получение типа данных элементов массива

Чтобы получить тип данных элементов массива, используйте свойство dtype. Например:

import numpy as np

a = np.array([1, 2, 3])

print(a.dtype)

Выход:

int32

В этом примере тип элементов — int32. Если вы хотите установить тип элементов массива, вы можете использовать аргумент dtype функции array(). Например:

import numpy as np

a = np.array([1, 2, 3], dtype=np.float64)

print(a)
print(a.dtype)

Выход:

[1. 2. 3.]
float64

В этом примере числа массива имеют десятичную точку(.), а тип данных его элементов — float64.

Создание двумерных массивов

В следующем примере функция array() используется для создания двумерного(2-D) массива:

import numpy as np

b = np.array(
    [
        [1, 2, 3],
        [4, 5, 6]
    ]
)

print(b)
print(b.ndim)

Выход:

[[1 2 3] 
 [4 5 6]]

2

В этом примере мы передаем список целых чисел в функцию array(). Свойство ndim возвращает 2, как и ожидалось.

Хороший совет, чтобы узнать количество измерений массива, — считать квадратные скобки([), пока не встретите первое число. Количество квадратных скобок — это количество измерений или осей.

Двумерный массив еще называют матрицей.

Создание трехмерного массива

В следующем примере функция array() используется для создания трехмерного(3-D) массива:

import numpy as np

c = np.array(
    [
        [
            [1, 2, 3],
            [4, 5, 6]
        ],
        [
            [7, 8, 9],
            [10, 11, 12]
        ],
    ]
)

print(c.ndim)

Выход:

3

Обратите внимание, что трехмерный массив также называется тензором.

Получение форм массивов

Чтобы найти количество осей и количество элементов на каждой оси массива, вы используете свойство shape. Например:

import numpy as np


a = np.array([1, 2, 3])
print(a.shape)  #(3,)

b = np.array(
    [
        [1, 2, 3],
        [4, 5, 6]
    ]
)
print(b.shape)  #(2, 3)

c = np.array(
    [
        [
            [1, 2, 3],
            [4, 5, 6]
        ],
        [
            [7, 8, 9],
            [10, 11, 12]
        ],
    ]
)
print(c.shape)  #(2, 2, 3)

Выход:

(3,)
(2, 3)   
(2, 2, 3)

На следующем рисунке объясняется форма каждого массива a, b и c:

Формы массивов

Свойство shape возвращает кортеж:

  • Количество элементов в кортеже — это количество осей.
  • Каждый элемент кортежа хранит количество элементов соответствующей оси.
Похожие посты
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *