Adloun

mathématiques approfondies (ECG 1re année) · Chapitre 11 · Application directe du cours

Transposer, et extraire une ligne ou une colonne

Informatique et algorithmique · Tableaux numpy · niveau 1 (application)

Énoncé

Soit . Écrire le code qui affiche sa forme, sa transposée, sa première ligne et sa deuxième colonne. Préciser la forme de chaque résultat.

Corrigé

Ce qu'on montre. Que l'extraction se fait avec le symbole :, et que la numérotation part de zéro.

Le programme.

import numpy as np

M = np.array([[1., 2., 3.],
              [4., 5., 6.]])

print(np.shape(M))                   # (2, 3)
print(np.transpose(M))
print(np.shape(np.transpose(M)))     # (3, 2)
print(M[0, :])                       # [1. 2. 3.]  : premiere LIGNE
print(M[:, 1])                       # [2. 5.]     : deuxieme COLONNE

Les résultats.

  • np.shape(M) vaut (2, 3) : deux lignes, trois colonnes.
  • La transposée est de forme (3, 2) : les dimensions sont échangées.
  • M[0, :] est la première ligne, [1. 2. 3.], de forme (3,).
  • M[:, 1] est la deuxième colonne, [2. 5.], de forme (2,).

La lecture du symbole :. Il signifie « tous les indices de cette dimension ». M[0, :] fixe la ligne et parcourt toutes les colonnes ; M[:, 1] parcourt toutes les lignes en fixant la colonne .

Point délicat. L'indexation commence à : M[0, :] est la première ligne, M[:, 1] la deuxième colonne. Et M[1, 2] vaut , le coefficient de la deuxième ligne et de la troisième colonne — décalé d'une unité par rapport à la notation mathématique .

Exercices semblables

Le cours du chapitre · Tous les exercices du chapitre