NumPy — популярная библиотека Python для числовых вычислений, обеспечивающая поддержку массивов, а также набор математических функций для работы с этими массивами в Python. Массивы в NumPy Python могут иметь различные измерения, и понимание каждого типа измерения имеет решающее значение для эффективного манипулирования данными.
- Что такое 0-мерный массив?
- Как создать?
- Метод 1: с использованием функции array()
- Метод 2: с использованием скалярных типов
- Метод 3: с использованием функции asarray()
- Метод 4: с использованием скалярных функций
- Способ 5: с использованием специальных функций
- Свойства 0-мерных массивов
Что такое 0-мерный массив?
Массив 0d в NumPy или скаляр — это простейшая форма массива в Python, содержащая только один элемент. В отличие от многомерных массивов Python NumPy, массив numpy 0d не имеет структуры строк и столбцов, в Python он просто содержит одно значение.
Этот единственный элемент может иметь любой тип данных, включая целые числа, числа с плавающей запятой или строки.
Давайте посмотрим на нулевой(0)-мерный массив NumPy в Python.
import numpy as np
zero_dim_array = np.array(42)
print(zero_dim_array)
print("Dimension:", zero_dim_array.ndim)
Вывод: сначала нам нужно импортировать библиотеку NumPy в Python, затем мы просто используем функцию NumPy array() для создания массива в Python и просто передаем в него значение. Итак, массив содержит только одно значение внутри себя.
После создания давайте просто проверим размерность созданного нами массива: используя функцию ndim() в библиотеке Python NumPy. Функция NumPy ndim() возвращает размер массива в Python.
42 Dimension: 0

Как создать?
В Python существует множество различных методов для создания массива NumPy 0d. Давайте рассмотрим их один за другим, используя несколько наглядных примеров:
Примечание. Чтобы проверить, создали ли мы объект как 0-мерный массив NumPy в Python:
| Имя | описание |
|---|---|
| функция type() | Это даст имя типа данных набора данных, созданного в Python. Это гарантирует, что мы создали массив NumPy в Python. |
| функция ndim() | Это функция NumPy, которая предоставит размерность массива, созданного в Python. |
Метод 1: с использованием функции array()
Функция numpy.array() — наиболее распространенный метод создания массивов в NumPy Python. Передав одно значение и указав параметр dtype, мы можем управлять типом данных результирующего 0-мерного массива в Python.
Пример. Давайте создадим ситуацию, когда мы храним отдельные данные в виде массива NumPy в Python.
import numpy as np
latitude = np.array(40.6892, dtype=np.float64)
print("Latitude of the Statue of Liberty:", latitude)
print(type(latitude))
print("Dimension:", latitude.ndim)
print("Data Type:", latitude.dtype)
Вывод: np.array (40.6892, dtype=np.float64) создает в Python 0-мерный массив NumPy, содержащий число 40.6892. Параметр dtype=np.float64 гарантирует, что тип данных массива NumPy в Python представляет собой 64-битное число с плавающей запятой.
Latitude of the Statue of Liberty: 40.6892 Dimension: 0 Data Type: float64

Метод 2: с использованием скалярных типов
NumPy в Python предоставляет скалярные типы для разных типов данных, таких как np.int32, np.float64 и np.str_. Создание массива 0d с этими типами предполагает прямую передачу значения, которое мы хотим сохранить в массиве 0d Python.
| Имя | Описание |
|---|---|
| np.int32(64) | При этом создается 0-мерный массив, содержащий целочисленное значение 64 с 32-битным целочисленным типом данных. |
| np.float64(5.35) | При этом создается 0-мерный массив, содержащий значение с плавающей запятой 5,35 с 64-битным типом данных с плавающей запятой. |
| np.str_(‘PythonGuides’) | При этом создается 0-мерный массив, содержащий строковое значение PythonGuides. |
Пример. Давайте запишем отдельные данные в виде массива в Python, используя библиотеку NumPy.
import numpy as np
temperature = np.int32(75)
print("Temperature:", temperature)
print(type(temperature))
print("Dimension:", temperature.ndim)
print("Data Type:", temperature.dtype)
Вывод: в этом примере мы использовали np.int32 для создания 0-мерного массива в NumPy Python для хранения данных. np.int32 гарантирует, что тип данных массива является 32-битным целым числом.
Temperature: 75 Dimension: 0 Data Type: int32

Метод 3: с использованием функции asarray()
Функция numpy.asarray() — это универсальный метод создания массивов из существующих данных в Python. Если вы предоставляете одно значение в качестве входных данных, оно возвращает массив NumPy 0d, содержащий это значение.
Пример: предположим, что мы вычисляем некоторые данные для компании и хотим, чтобы эти данные хранились в виде 0-мерного массива NumPy в Python.
import numpy as np
sales_tax_rate = np.asarray(8.875)
print("Sales Tax Rate:", sales_tax_rate)
print(type(sales_tax_rate))
print("Dimension:", sales_tax_rate.ndim)
print("Data Type:", sales_tax_rate.dtype)
Вывод: здесь np.asarray используется для преобразования данных в 0-мерный массив NumPy в Python. Эта функция автоматически определяет тип данных, который в данном случае является числом с плавающей запятой.
Sales Tax Rate: 8.875 Dimension: 0 Data Type: float64

Метод 4: с использованием скалярных функций
NumPy предоставляет множество функций, которые могут возвращать скалярные значения. При использовании в контексте, который приводит к одному значению, эти функции возвращают 0-мерные массивы в NumPy Python.
| np.prod([1, 2, 3, 4]) | При этом вычисляется произведение всех чисел во входном массиве в Python, в результате чего скалярное значение 24 возвращается в виде 0-мерного массива NumPy в Python. |
| np.mean([1, 2, 3, 4]) | Это вычисляет среднее значение всех предоставленных чисел и возвращает массив 0D в Python. |
Пример: Предположим, нам нужно сохранить результат вычисления в формате массива в Python.
import numpy as np
scores = np.array([95, 102, 89, 110, 104])
average_score = np.mean(scores)
print("Average Score:", average_score)
print(type(average_score))
print("Dimension:", average_score.ndim)
print("Data Type:", average_score.dtype)
Вывод: здесь np.mean в Numpy Python вычисляет среднее значение массива NumPy и сохраняет результат в 0-мерном массиве. Поскольку баллы являются целыми числами, результат сохраняется в виде числа с плавающей запятой, чтобы сохранить десятичную часть среднего значения.
Average Score: 100.0 Dimension: 0 Data Type: float64

Способ 5: с использованием специальных функций
Некоторые библиотечные функции NumPy, такие как numpy.linspace() и numpy.arange(), обычно используются для создания последовательностей чисел, но их можно настроить на возврат 0-мерного массива.
| Имя | Описание |
|---|---|
| np.linspace(0, 1, 1) | Генерирует одно число от 0 до 1, в результате чего получается 0-мерный массив, содержащий это значение. |
| np.arange(5, 6) | Генерирует последовательность чисел от 5 до 6 (но не включая). Поскольку диапазон состоит только из одного числа, в результате получается 0-мерный массив, содержащий число 5. |
Пример. Анализ и прогнозирование данных из состояния с помощью библиотеки NumPy в Python.
import numpy as np
population_next_year = np.linspace(1500, 1550, 1)
print("Predicted Population for Next Year:", population_next_year)
print(type(population_next_year))
print("Dimension:", population_next_year.ndim)
print("Data Type:", population_next_year.dtype)
Вывод: в этом примере np.linspace генерирует последовательность чисел от 1500 до 1550, но, поскольку количество выборок установлено равным 1, он напрямую возвращает начальное значение в виде 0-мерного массива NumPy в Python.
Predicted Population for Next Year: [1500.] Dimension: 1 Data Type: float64

Свойства 0-мерных массивов
0-мерные массивы в Python NumPy имеют несколько свойств, к которым вы можете получить доступ, чтобы узнать больше о массиве. Некоторые из этих свойств включают в себя:
| Имя | Описание |
|---|---|
| ndim: | Это свойство возвращает количество измерений массива NumPy в Python. Для 0-мерного массива это будет 0. |
| shape: | Это свойство возвращает кортеж, представляющий размеры массива в Python. Для 0-мерного массива NumPy в Python это будет пустой кортеж(). |
| size: | Это свойство возвращает количество элементов в массиве NumPy в Python. Для 0-мерного массива это будет 1. |
| dtype: | Это свойство возвращает тип данных элементов массива Python в NumPy. |
Пример. Вот пример, демонстрирующий эти свойства 0-мерного массива в Python:
import numpy as np
scalar = np.array(42)
print("Dimensions:", scalar.ndim)
print("Shape:", scalar.shape)
print("Size:", scalar.size)
print("Data Type:", scalar.dtype)
Выход:
Dimensions: 0 Shape:() Size: 1 Data Type: int32
