Введение
В этом уроке мы рассмотрим атрибуты массивов NumPy, сосредоточившись на атрибуте dtype. NumPy - это мощная библиотека для численных вычислений в Python, а массив NumPy - это核心数据结构 для этой библиотеки.
Массивы NumPy - это многомерные однородные массивы, что означает, что они могут хранить элементы одного и того же типа данных в нескольких измерениях. Они эффективны и удобны для численных операций, предоставляя множество функций и возможностей.
Создание массивов NumPy
Прежде чем изучать атрибуты массивов NumPy, давайте сначала создадим массив NumPy. Вы можете создавать массивы NumPy из списков, кортежей или других массивов с использованием функции numpy.array().
Откройте Python-интерпретатор
Откройте Python-интерпретатор, введя следующую команду в терминале.
python3
Теперь вы можете использовать функцию numpy.array() для создания массивов NumPy
import numpy as np
## Создание одномерного массива из списка
one_d_array = np.array([1, 2, 3, 4, 5])
## Создание двумерного массива из списка списков
two_d_array = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
Атрибуты массивов NumPy
Массивы NumPy имеют несколько атрибутов, которые предоставляют информацию о свойствах массива, таких как:
shape: Кортеж, представляющий размерности массива.size: Общее количество элементов в массиве.ndim: Размерности (оси) массива.dtype: Тип данных элементов массива.itemsize: Размер в байтах каждого элемента в массиве.
Использование атрибутов массива
Теперь мы можем использовать эти атрибуты на практике:
## Создайте двумерный массив
array = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
## Получите размерность массива
print("Shape:", array.shape) ## Output: (3, 3)
## Получите размер массива
print("Size:", array.size) ## Output: 9
## Получите количество размерностей массива
print("Number of dimensions:", array.ndim) ## Output: 2
## Получите тип данных элементов массива
print("Data type:", array.dtype) ## Output: int64 (или int32, в зависимости от вашей системы)
## Получите размер в байтах каждого элемента в массиве
print("Item size:", array.itemsize) ## Output: 8 (или 4, в зависимости от вашей системы)
Понимание Dtype
Атрибут dtype особенно важен, так как он определяет тип данных, хранящихся в массиве. NumPy поддерживает различные типы данных, такие как целые числа (int8, int16, int32, int64), неотрицательные целые числа (uint8, uint16, uint32, uint64), числа с плавающей точкой (float16, float32, float64) и комплексные числа (complex64, complex128).
При создании массива NumPy вы можете указать dtype с использованием параметра dtype. Если не указать, NumPy попытается определить тип данных из входных данных.
Использование dtype
Давайте рассмотрим использование атрибута dtype
## Создайте массив с плавающей точкой из списка
float_array = np.array([1.2, 2.3, 3.4, 4.5], dtype=np.float32)
print("Float array dtype:", float_array.dtype) ## Output: float32
## Создайте целый массив из списка
int_array = np.array([1, 2, 3, 4, 5], dtype=np.int16)
print("Integer array dtype:", int_array.dtype) ## Output: int16
## Создайте комплексный массив из списка
complex_array = np.array([1 + 2j, 2 + 3j, 3 + 4j], dtype=np.complex64)
print("Complex array dtype:", complex_array.dtype) ## Output: complex64
## Создайте массив и попробуйте, чтобы NumPy определил тип данных
mixed_array = np.array([1, 2, 3.5, 4.5])
print("Mixed array dtype:", mixed_array.dtype) ## Output: float64
## Изменение типа данных существующего массива
new_dtype_array = mixed_array.astype(np.int32)
print("New dtype array:", new_dtype_array) ## Output: [1 2 3 4]
print("New dtype:", new_dtype_array.dtype) ## Output: int32
## Создание массива из нулей с заданным dtype
zeros_array = np.zeros((3, 3), dtype=np.uint8)
print("Zeros array with dtype uint8:\n", zeros_array) ## Output:[[0 0 0] [0 0 0] [0 0 0]]
Резюме
Кратко говоря, в этом уроке мы сосредоточились на атрибутах массивов NumPy, особенно на атрибуте dtype. Мы рассмотрели создание массивов NumPy, изучили важные атрибуты и углубились в значение dtype. Понимание и эффективное использование атрибута dtype является至关重要 для эффективных и точных численных вычислений в Python с использованием массивов NumPy. Продолжайте практиковать, чтобы повысить свою мастерство в использовании массивов NumPy и их атрибутов.



