Атрибуты массива и Dtype

NumPyNumPyBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом уроке мы рассмотрим атрибуты массивов 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 и их атрибутов.