> Modules non standards > numpy > Séquences numpy
Séquences numpy
arange, équivalent de range :
- numpy.arange(5) : équivalent de range(5).
- numpy.arange(5, dtype = numpy.float16) : avec des floats.
- numpy.arange(2, 7) : entiers de 2 à 6.
- numpy.arange(2, 7, 0.5) : nombres avec incrément de 0.5.
linspace (et logspace), pour avoir des éléments régulièrement espacés non nécessairement entiers :
- numpy.linspace(1, 4, 5) : 5 éléments régulièrement espacés entre 1 et 4, 1 et 4 inclus, donc donne array([1., 1.75, 2.5, 3.25, 4.]).
- numpy.linspace(1, 4, 5, endpoint = False) : 5 éléments régulièrement espacés entre 1 et 4, mais 4 exclus, donc donne ici array([1., 1.6, 2.2, 2.8, 3.4]).
- numpy.linspace(1, 4, 5, retstep = True) : 5 éléments régulièrement espacés, 1 et 4 inclus, mais renvoie un tuple avec l'array et l'espacement, donc ici (array([1., 1.75, 2.5, 3.25, 4.]), 0.75).
- numpy.logspace(1, 4, 5) : 5 éléments régulièrement espacés selon une progression géométrique entre 10^1 et 10^4, donc donne ici array([10., 56.23413252, 316.22776602, 1778.27941004, 10000.]). On peut utiliser aussi endpoint = True pour exclure le dernier élément.
- numpy.logspace(1, 4, 5, base = 2) : pareil mais entre 2^1 et 2^4 (en base 2), donc ici array([2., 3.36358566, 5.65685425, 9.51365692, 16.]).
numpy.geomspace(1, 64, 7) : donne 7 points entre 1 et 64 (inclus) espacés selon une progression géométrique.
meshgrid : permet de générer deux matrices, l'une avec des colonnes constantes, l'autre avec des lignes constantes afin de pouvoir évaluer une fonction sur une matrice de valeurs :
- (x, y) = numpy.meshgrid([0, 1, 2, 3], [0, 1, 2]) : renvoie pour x :
array([[0, 1, 2, 3],
[0, 1, 2, 3],
[0, 1, 2, 3]])
et pour y :
array([[0, 0, 0, 0],
[1, 1, 1, 1],
[2, 2, 2, 2]])
- pour évaluer la fonction de 2 variables x ** 2 + y ** 2 sur x dans [0, 1, 2, 3] et y dans [0, 1, 2], on a plus qu'à faire x ** 2 + y ** 2, ce qui donne :
array([[ 0, 1, 4, 9],
[ 1, 2, 5, 10],
[ 4, 5, 8, 13]])
Copyright python-simple.com
programmer en python, tutoriel python, graphes en python, Aymeric Duclert