NumPy full: Создание массивов с заданным значением

Массивы NumPy являются важной частью большинства рабочих процессов анализа данных и науки о данных в Python. Поэтому умение генерировать массивы является важным навыком. В этом уроке вы узнаете, как использовать функцию NumPy full() для генерации массивов, заполненных заданным значением. Эта функция похожа на функции NumPy zeroes() и NumPy ones(), однако она генерирует массивы различной формы, заполненные заданным числом.

К концу этого урока вы научитесь:

  • Как работает функция NumPy full()

  • Как генерировать одномерные и двумерные массивы, заполненные числами

  • Как установить тип данных при создании массивов с помощью NumPy full()

Содержание

Понимание функции NumPy full()

What is the NumPy full() function?

Функция full() в NumPy используется для создания массивов, заполненных заданным числом. Эта функция может создавать одномерные и двумерные массивы указанного типа данных.

Перед тем, как погрузиться в использование функции full() NumPy, давайте изучим, как эта функция устроена. Это позволит вам лучше понять параметры и аргументы по умолчанию функции. Знание этого готовит вас к пониманию того, как настроить вывод результирующей функции.

# Понимание функции np.full() из библиотеки NumPy
import numpy as np

arr = np.full(shape, fill_value, dtype=None, order='C')

Функция np.full() создает новый массив заданной формы (shape) и заполняет его значениями fill_value.

Мы видим, что функция имеет четыре разных параметра, два из которых имеют аргументы по умолчанию. В таблице ниже эти аргументы подробно разобраны:

ПараметрОписаниеАргумент по умолчаниюПринятые значения

shape=

Форма нового массива.

N/A

int or sequence of ints

fill_value=

Используемое значение заполнения.

N/A

scalar or array-like

dtype=

Тип данных для массива. Если указано None, тип данных будет соответствовать переданному значению заполнения.

None

data type

order=

Хранить ли многомерные данные в порядке C-для Фортрана.

'C'

‘C’ or ‘F’

Теперь, когда у вас есть твердое понимание функции, давайте углубимся в то, как мы можем использовать функцию для генерации массивов.

Создайте одномерный массив NumPy, заполненный одним и тем же числом

NumPy позволяет легко создавать одномерные массивы, заполненные заданным значением. Для этого достаточно передать единственное целое число в параметр shape=. Это позволяет указать длину результирующего массива. Передав второе значение в функцию, можно указать значение, которым вы хотите заполнить массив.

Давайте создадим массив из пяти значений, содержащий значение 3:

# Генерация одномерных массивов с помощью np.full()
import numpy as np

arr = np.full(shape=5, fill_value=3)
print(arr)

# Returns: [3 3 3 3 3]

Этот код создает одномерный массив размером 5, заполненный значением 3 с помощью функции np.full().

В приведенном выше блоке кода мы передаем значения 5 и 3 в функцию full(). Поскольку параметры shape= и fill_value= являются первым и вторым значениями по позициям, мы можем избежать использования их ключевых слов.

Создайте двумерный массив NumPy, заполненный одним и тем же числом

Чтобы создать двумерный массив в NumPy, заполненный заданным значением, можно передать кортеж значений в параметр shape. Это позволяет задать размеры результирующего массива. Давайте посмотрим, как мы можем создать массив размером 3 на 3, содержащий значение 3.

# Генерация двумерных массивов с помощью np.full()
import numpy as np

arr = np.full(shape=(3, 3), fill_value=3)
print(arr)

# Returns: 
# [[3 3 3]
#  [3 3 3]
#  [3 3 3]]

Этот код создает двумерный массив размером 3x3, заполненный значением 3 с помощью функции np.full().

Давайте разберем то, что мы сделали выше:

  1. Мы передали (3, 3), чтобы указать, что нам нужен массив размером 3 на 3.

  2. Мы также передали значение для заполнения, равное 3, чтобы заполнить массив значением 3.

В следующем разделе вы узнаете, как указывать тип данных при создании массивов NumPy.

Измените тип данных при создании массивов NumPy с помощью full()

По умолчанию функция full() в NumPy будет использовать тип данных значения заполнения, которое было передано. Это означает, что в предыдущих примерах тип данных значения был целым числом. Тем не менее, мы можем указать тип данных элементов в массиве, используя параметр dtype=. Давайте посмотрим, как мы можем воссоздать массив из вышеупомянутого примера, используя значения с плавающей точкой.

# Изменение типа данных массивов, сгенерированных с помощью np.full()
import numpy as np

arr = np.full(shape=(3, 3), fill_value=3, dtype='float')
print(arr)

# Returns: 
# [[3. 3. 3.]
#  [3. 3. 3.]
#  [3. 3. 3.]]

Этот код создает двумерный массив размером 3x3, заполненный значением 3, и изменяет его тип данных на float с помощью параметра dtype функции np.full().

Путем передачи 'float' в качестве третьего аргумента, мы можем указать тип данных результирующего массива как вещественные числа. Это несмотря на то, что в качестве аргумента значения заполнения передается целое число.

Заключение

В этом уроке вы научились создавать массивы NumPy с заданным значением заполнения с помощью функции np.full(). Сначала вы узнали, как разработана функция, изучив параметры и аргументы по умолчанию функции. Затем вы научились создавать одномерные и двумерные массивы с заданным значением заполнения. Наконец, вы научились указывать тип данных результирующего массива.

Дополнительные ресурсы

Чтобы узнать больше о смежных темах, ознакомьтесь с ниже приведенными учебными пособиями:

Last updated