Exemples de comment insérer aléatoirement des NaN dans une matrice avec numpy en python:
Table des matières
Créer une matrice avec numpy
Soit par exemple la matrice A suivante:
import numpy as np
A = np.random.uniform(10,80, size=(4,6))
print(A)
donne
[[52.34830542 43.7300926 65.65912419 74.47707968 47.7363097 31.78605372]
[49.41123686 19.82268971 59.91408598 40.86920833 53.23834812 37.93559161]
[16.18419498 42.49772722 76.53306408 30.90572765 38.15287236 72.44956349]
[46.15969878 52.39722864 71.97596547 70.40800518 44.63824773 35.43923044]]
Insérer aléatoirement des NaN
Exemple de comment insérer 6 NaN dans la matrice A;
n = 6
index = np.random.choice(A.size, n, replace=False)
A.ravel()[index] = np.nan
print(A)
donne
[[52.34830542 43.7300926 65.65912419 nan 47.7363097 nan]
[ nan 19.82268971 nan 40.86920833 53.23834812 37.93559161]
[16.18419498 42.49772722 nan 30.90572765 38.15287236 72.44956349]
[46.15969878 52.39722864 71.97596547 nan 44.63824773 35.43923044]]
Autre exemple
Note:
print(type(np.nan))
donne
<class 'float'>
Autre exemple
import numpy as np
A = np.random.randint(10,80, size=(5,2))
A = A * 1.0
print(A)
donne
[[52. 55.]
[14. 33.]
[19. 50.]
[67. 37.]
[16. 72.]]
n = 3
index = np.random.choice(A.size, n, replace=False)
A.ravel()[index] = np.nan
print(A)
donne
[[52. 55.]
[14. 33.]
[19. nan]
[67. nan]
[16. nan]]