Entendendo Dtype
O atributo dtype é particularmente importante porque determina o tipo de dados armazenados no array. NumPy suporta vários tipos de dados, como inteiros (int8, int16, int32, int64), inteiros sem sinal (uint8, uint16, uint32, uint64), números de ponto flutuante (float16, float32, float64) e números complexos (complex64, complex128).
Ao criar um array NumPy, você pode especificar o dtype usando o parâmetro dtype. Se não for especificado, NumPy tentará inferir o tipo de dado a partir dos dados de entrada.
Uso de Dtype
Vamos explorar o uso do atributo dtype
## Criar um array float a partir de uma lista
float_array = np.array([1.2, 2.3, 3.4, 4.5], dtype=np.float32)
print("Float array dtype:", float_array.dtype) ## Output: float32
## Criar um array inteiro a partir de uma lista
int_array = np.array([1, 2, 3, 4, 5], dtype=np.int16)
print("Integer array dtype:", int_array.dtype) ## Output: int16
## Criar um array complexo a partir de uma lista
complex_array = np.array([1 + 2j, 2 + 3j, 3 + 4j], dtype=np.complex64)
print("Complex array dtype:", complex_array.dtype) ## Output: complex64
## Criar um array e deixar o Numpy inferir o tipo de dado
mixed_array = np.array([1, 2, 3.5, 4.5])
print("Mixed array dtype:", mixed_array.dtype) ## Output: float64
## Alterando o tipo de dado de um array existente
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
## Criando um array de zeros com dtype especificado
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]]