Comment obtenir le type d'une matrice avec numpy en python ?

Published: 21 juillet 2020

Tags: Python; Numpy;

DMCA.com Protection Status

Exemples de comment obtenir le type d'une matrice avec numpy en python:

Déterminer le type d'une matrice avec l'attribut dtype

Pour determiner le type d'une matrice, une solution est d'utiliser dtype, exemple:

import numpy as np

A = np.array([[1.2, 2.3, 3.4]])

print(A.dtype)

donne

float64

Changer le type d'une matrice

Pour changer le type d'une matrice on peut tout simplement faire comme ceci:

A = np.array([[1.2, 2.3, 3.4]], dtype=int)

print(A)

print(A.dtype)

donne repectivement:

[[1 2 3]]

et

int64

Pour changer le type d'une matrice existante on peut utiliser astype():

A = A.astype('float64')

print(A.dtype)

donne

float64

Combiner des matrices de différent type

Il est important de vérifier le type d'une matrice pour ne pas perdre d'information, exemple soit la matrice A suivante

A = np.array([[10, 20, 30], [60, 20, 10], [50, 30, 90]])

donne

[[10 20 30]
 [60 20 10]
 [50 30 90]]

et la matrice B:

B= np.array([[2.1, 7.3, 4.5]])

donne

[[2.1 7.3 4.5]]

Si on modifie une ligne de A en utilisant B comme ceci:

A[1,:] = B

on obtient:

[[10 20 30]
 [ 2  7  4]
 [50 30 90]]

mais les éléments de B ont été modifiés. Pour éviter cela, on aurait pu faire par exemple au préalable:

A = A.astype('float64')

A[1,:] = B

donne

[[10.  20.  30. ]
 [ 2.1  7.3  4.5]
 [50.  30.  90. ]]

Références