[Introduction à Python] <numpy ndarray> [modifier le 22/02/2020]

table des matières

  1. [Réglage des données d'entrée](# step1-Réglage des données d'entrée)
  2. [Data Manipulation / Algorithm](# step2-Data Manipulation - Algorithm)
  3. [Paramètres des données de sortie](# step3-Paramètres des données de sortie)

Étape 1 Réglage des données d'entrée

1. Fonctionnement de base

1-1. Méthode de définition simple

Tableau à 1 dimension


import numpy as np
sample_ndarray_1d = np.array([1,2,3,4,5])
print("sample_ndarray_1d: ", sample_ndarray_1d)
sample_ndarray_1d:  [1 2 3 4 5]

Un tableau bidimensionnel


import numpy as np
sample_ndarray_2d = np.array([[1,2,3,4,5],[6,7,8,9,10]])
print("sample_ndarray_2d: ", sample_ndarray_2d)
sample_ndarray_2d:  [[ 1  2  3  4  5]

1-2. Accès aux éléments [nombre d'éléments: 1]

Tableau à 1 dimension


import numpy as np
sample_ndarray_1d = np.array([1,2,3,4,5])
print("sample_ndarray_1d[0]: ", sample_ndarray_1d[0])
print("sample_ndarray_1d[1]: ", sample_ndarray_1d[1])
print("sample_ndarray_1d[2]: ", sample_ndarray_1d[2])
print("sample_ndarray_1d[3]: ", sample_ndarray_1d[3])
print("sample_ndarray_1d[4]: ", sample_ndarray_1d[4])
print("sample_ndarray_1d[-1]: ", sample_ndarray_1d[-1])
sample_ndarray_1d[0]:  1
sample_ndarray_1d[1]:  2
sample_ndarray_1d[2]:  3
sample_ndarray_1d[3]:  4
sample_ndarray_1d[4]:  5
sample_ndarray_1d[-1]:  5

Un tableau bidimensionnel


import numpy as np
sample_ndarray_2d = np.array([[1,2,3,4,5],[6,7,8,9,10]])
print("sample_ndarray_2d[0,0]: ", sample_ndarray_2d[0,0])
print("sample_ndarray_2d[0,1]: ", sample_ndarray_2d[0,1])
print("sample_ndarray_2d[0,2]: ", sample_ndarray_2d[0,2])
print("sample_ndarray_2d[0,3]: ", sample_ndarray_2d[0,3])
print("sample_ndarray_2d[0,4]: ", sample_ndarray_2d[0,4])
print("sample_ndarray_2d[1,0]: ", sample_ndarray_2d[1,0])
print("sample_ndarray_2d[1,1]: ", sample_ndarray_2d[1,1])
print("sample_ndarray_2d[1,2]: ", sample_ndarray_2d[1,2])
print("sample_ndarray_2d[1,3]: ", sample_ndarray_2d[1,3])
print("sample_ndarray_2d[1,4]: ", sample_ndarray_2d[1,4])
sample_ndarray_2d[0,0]:  1
sample_ndarray_2d[0,1]:  2
sample_ndarray_2d[0,2]:  3
sample_ndarray_2d[0,3]:  4
sample_ndarray_2d[0,4]:  5
sample_ndarray_2d[1,0]:  6
sample_ndarray_2d[1,1]:  7
sample_ndarray_2d[1,2]:  8
sample_ndarray_2d[1,3]:  9
sample_ndarray_2d[1,4]:  10

1-3. Accès aux éléments [Nombre d'éléments: multiples]

Tableau à 1 dimension


import numpy as np
sample_ndarray_1d = np.array([1,2,3,4,5])
print("sample_ndarray_1d: ", sample_ndarray_1d)
sample_ndarray_1d:  [1 2 3 4 5]

start_id = 1
end_id = 3
print("Numéros d'article "1" à "3":",sample_ndarray_1d[start_id:end_id+1])
print("Numéro d'article "Premier" à "3":",sample_ndarray_1d[:end_id+1])
print("Numéro d'article "1" à "dernier":",sample_ndarray_1d[start_id:])
print("Tous les éléments:",sample_ndarray_1d[:])
Numéros d'article "1" à "3":[2 3 4]
Numéro d'article "Premier" à "3":[1 2 3 4]
Numéro d'article "1" à "dernier":[2 3 4 5]
Tous les éléments:[1 2 3 4 5]

1-4. Longueur du tableau

Tableau à 1 dimension


import numpy as np
sample_ndarray_1d = np.array([1,2,3,4,5])
print("Longueur du tableau:",len(sample_ndarray_1d))
Longueur du tableau: 5

Un tableau bidimensionnel


import numpy as np
sample_ndarray_2d = np.array([[1,2,3,4,5],[6,7,8,9,10]])
print("Longueur de la liste des parents:",len(sample_ndarray_2d))         ###Liste des parents
print("Longueur de la première liste enfant:",len(sample_ndarray_2d[0]))  ###Première liste d'enfants
Longueur de la liste des parents: 2
Longueur de la première liste enfant: 5

1-5. Taille du tableau

Tableau à 1 dimension


import numpy as np
sample_ndarray_1d = np.array([1,2,3,4,5])
print("Taille du tableau:",sample_ndarray_1d.shape)
Taille du tableau:(5,)

Un tableau bidimensionnel


import numpy as np
sample_ndarray_2d = np.array([[1,2,3,4,5],[6,7,8,9,10]])
print("Taille du tableau:",sample_ndarray_2d.shape)
Taille du tableau:(2, 5)

1-6. Numéro de dimension

Tableau à 1 dimension


import numpy as np
sample_ndarray_1d = np.array([1,2,3,4,5])
print("Nombre de dimensions:",sample_ndarray_1d.ndim)
Nombre de dimensions: 1

Un tableau bidimensionnel


import numpy as np
sample_ndarray_2d = np.array([[1,2,3,4,5],[6,7,8,9,10]])
print("Nombre de dimensions:",sample_ndarray_2d.ndim)
Nombre de dimensions: 2

1-7. Numéro d'élément

Tableau à 1 dimension


import numpy as np
sample_ndarray_1d = np.array([1,2,3,4,5])
print("Nombre d'éléments:",sample_ndarray_1d.size)
Nombre d'éléments: 5

Un tableau bidimensionnel


import numpy as np
sample_ndarray_2d = np.array([[1,2,3,4,5],[6,7,8,9,10]])
print("Nombre d'éléments:",sample_ndarray_2d.size)
Nombre d'éléments: 10

1-8. Type de stockage (type de données)

Tableau à 1 dimension


import numpy as np
sample_ndarray = np.array([1,2,3,4,5])
print("Type de stockage:",type(sample_ndarray))
Type de stockage:<class 'numpy.ndarray'>

1-9. Type de données d'élément

Tableau à 1 dimension


import numpy as np
sample_ndarray = np.array([1,2,3,4,5])
print("Type de données d'élément:",sample_ndarray.dtype)
Type de données d'élément: int32

1 à 10. Suppression d'axe [Numéro d'article d'axe, Direction d'axe]

Tableau à 1 dimension


import numpy as np
sample_ndarray_1d = np.array([1,2,3,4,5])
print("sample_ndarray_1d: ",sample_ndarray_1d)
sample_ndarray_1d:  [1 2 3 4 5]

deleted_ndarray_1d = np.delete(sample_ndarray_1d,2,0)
print("deleted_ndarray_1d: ",deleted_ndarray_1d)
deleted_ndarray_1d:  [1 2 4 5]

Un tableau bidimensionnel[Supprimer: ligne]


import numpy as np
sample_ndarray_2d = np.array([[1,2,3,4,5],[6,7,8,9,10]])
print("sample_ndarray_2d: ", sample_ndarray_2d)
sample_ndarray_2d:  [[ 1  2  3  4  5]
 [ 6  7  8  9 10]]

deleted_ndarray_2d = np.delete(sample_ndarray_2d,0,0)
print("deleted_ndarray_2d: ",deleted_ndarray_2d)
deleted_ndarray_2d:  [[ 6  7  8  9 10]]

Un tableau bidimensionnel[Supprimer: Colonne]


import numpy as np
sample_ndarray_2d = np.array([[1,2,3,4,5],[6,7,8,9,10]])
print("sample_ndarray_2d: ", sample_ndarray_2d)
sample_ndarray_2d:  [[ 1  2  3  4  5]
 [ 6  7  8  9 10]]

deleted_ndarray_2d = np.delete(sample_ndarray_2d,2,1)
print("deleted_ndarray_2d: ",deleted_ndarray_2d)
deleted_ndarray_2d:  [[ 1  2  4  5]
 [ 6  7  9 10]]

1-11. Concaténation de séquences [Méthode 1]

Tableau à 1 dimension


import numpy as np
A = np.array([1,2,3])
B = np.array([4,5,6])

C = np.concatenate((A,B),axis=0)
print("joint ndarray (Horizontal): ", C)
joint ndarray (Horizontal):  [1 2 3 4 5 6]

Un tableau bidimensionnel


import numpy as np
A = np.array([[1,2,3],[4,5,6]])
B = np.array([[7,8,9],[10,11,12]])

C = np.concatenate((A,B),axis=0)
print("joint ndarray (Vertical): ", C)
joint ndarray (Vertical):  [[ 1  2  3]
 [ 4  5  6]
 [ 7  8  9]
 [10 11 12]]

D = np.concatenate((A,B),axis=1)
print("joint ndarray (Horizontal): ", D)
joint ndarray (Horizontal):  [[ 1  2  3  7  8  9]
 [ 4  5  6 10 11 12]]

1-12. Concaténation de séquences [Méthode 2]

Tableau à 1 dimension


import numpy as np
A = np.array([1,2,3])
B = np.array([4,5,6])

C = np.block([[A,B]])
print("joint ndarray (Vertical): ", C)
joint ndarray (Vertical):  [[1 2 3]
 [4 5 6]]

D = np.block([[A],[B]])
print("joint ndarray (Horizontal): ", D)
joint ndarray (Horizontal):  [1 2 3 4 5 6]

Un tableau bidimensionnel


import numpy as np
A = np.array([[1,2,3],[4,5,6]])
B = np.array([[7,8,9],[10,11,12]])

C = np.block([[A],[B]])
print("joint ndarray (Vertical): ", C)
joint ndarray (Vertical):  [[ 1  2  3]
 [ 4  5  6]
 [ 7  8  9]
 [10 11 12]]

D = np.block([[A,B]])
print("joint ndarray (Horizontal): ", D)
joint ndarray (Horizontal):  [[ 1  2  3  7  8  9]
 [ 4  5  6 10 11 12]]

1-13. Concaténation de séquences [Méthode 3]

Tableau à 1 dimension


import numpy as np
A = np.array([1,2,3])
B = np.array([4,5,6])

C = np.vstack((A,B))
print("joint ndarray (Vertical): ", C)
joint ndarray (Vertical):  [[1 2 3]
 [4 5 6]]

D = np.hstack((A,B))
print("joint ndarray (Horizontal): ", D)
joint ndarray (Horizontal):  [1 2 3 4 5 6]

Un tableau bidimensionnel


import numpy as np
A = np.array([[1,2,3],[4,5,6]])
B = np.array([[7,8,9],[10,11,12]])

C = np.vstack((A,B))
print("joint ndarray (Vertical): ", C)
joint ndarray (Vertical):  [[ 1  2  3]
 [ 4  5  6]
 [ 7  8  9]
 [10 11 12]]

D = np.hstack((A,B))
print("joint ndarray (Horizontal): ", D)
joint ndarray (Horizontal):  [[ 1  2  3  7  8  9]
 [ 4  5  6 10 11 12]]

1-14. Concaténation de séquences [Génération de tableaux par concaténation d’éléments]

Un tableau bidimensionnel


import numpy as np
A = np.array([[1,2,3],[4,5,6]])
B = np.array([[7,8,9],[10,11,12]])

C = np.dstack((A,B))
print("stack ndarray: ", C)
stack ndarray:  [[[ 1  7]
  [ 2  8]
  [ 3  9]]

 [[ 4 10]
  [ 5 11]
  [ 6 12]]]

print("Taille du tableau:",C.shape)
print("Nombre de dimensions:",C.ndim)
Taille du tableau:(2, 3, 2)
Nombre de dimensions: 3

1-15. Pile de baies

Un tableau bidimensionnel


import numpy as np
A = np.array([[1,2,3],[4,5,6]])
B = np.array([[7,8,9],[10,11,12]])

C = np.stack((A,B))
print("stack ndarray: ", C)
stack ndarray:  [[[ 1  2  3]
  [ 4  5  6]]

 [[ 7  8  9]
  [10 11 12]]]

print("Taille du tableau:",C.shape)
print("Nombre de dimensions:",C.ndim)
Taille du tableau:(2, 2, 3)
Nombre de dimensions: 3

1-16. Arrangement [Méthode 1]

Tableau à 1 dimension


import numpy as np
sample_ndarray_1d = np.array([1,2,3,4,5,6])
print("sample_ndarray_1d: ",sample_ndarray_1d)
sample_ndarray_1d:  [1 2 3 4 5 6]

split_ndarray_1d = np.split(sample_ndarray_1d,2)
print("split_ndarray_1d[0]: ",split_ndarray_1d[0])
print("split_ndarray_1d[1]: ",split_ndarray_1d[1])
split_ndarray_1d[0]:  [1 2 3]
split_ndarray_1d[1]:  [4 5 6]

Un tableau bidimensionnel[Split: ligne]


import numpy as np
sample_ndarray_2d = np.array([[1,2,3,4,5,6],[7,8,9,10,11,12]])
print("sample_ndarray_2d: ",sample_ndarray_2d)
sample_ndarray_2d:  [[ 1  2  3  4  5  6]
 [ 7  8  9 10 11 12]]

split_ndarray_2d = np.split(sample_ndarray_2d,2,axis=0)
print("split_ndarray_2d[0]: ",split_ndarray_2d[0])
print("split_ndarray_2d[1]: ",split_ndarray_2d[1])
split_ndarray_2d[0]:  [[1 2 3 4 5 6]]
split_ndarray_2d[1]:  [[ 7  8  9 10 11 12]]

Un tableau bidimensionnel[Split: Colonne]


import numpy as np
sample_ndarray_2d = np.array([[1,2,3,4,5,6],[7,8,9,10,11,12]])
print("sample_ndarray_2d: ",sample_ndarray_2d)
sample_ndarray_2d:  [[ 1  2  3  4  5  6]
 [ 7  8  9 10 11 12]]

split_ndarray_2d = np.split(sample_ndarray_2d,2,axis=1)
print("split_ndarray_2d[0]: ",split_ndarray_2d[0])
print("split_ndarray_2d[1]: ",split_ndarray_2d[1])
split_ndarray_2d[0]:  [[1 2 3]
 [7 8 9]]
split_ndarray_2d[1]:  [[ 4  5  6]
 [10 11 12]]

1-16. Division de séquence [Méthode 2]

Un tableau bidimensionnel[Split: ligne]


import numpy as np
sample_ndarray_2d = np.array([[1,2,3,4,5,6],[7,8,9,10,11,12]])
print("sample_ndarray_2d: ",sample_ndarray_2d)
sample_ndarray_2d:  [[ 1  2  3  4  5  6]
 [ 7  8  9 10 11 12]]

split_ndarray_2d = np.vsplit(sample_ndarray_2d,2)
print("split_ndarray_2d[0]: ",split_ndarray_2d[0])
print("split_ndarray_2d[1]: ",split_ndarray_2d[1])
split_ndarray_2d[0]:  [[1 2 3 4 5 6]]
split_ndarray_2d[1]:  [[ 7  8  9 10 11 12]]

Un tableau bidimensionnel[Split: Colonne]


import numpy as np
sample_ndarray_2d = np.array([[1,2,3,4,5,6],[7,8,9,10,11,12]])
print("sample_ndarray_2d: ",sample_ndarray_2d)
sample_ndarray_2d:  [[ 1  2  3  4  5  6]
 [ 7  8  9 10 11 12]]

split_ndarray_2d = np.hsplit(sample_ndarray_2d,2)
print("split_ndarray_2d[0]: ",split_ndarray_2d[0])
print("split_ndarray_2d[1]: ",split_ndarray_2d[1])
split_ndarray_2d[0]:  [[1 2 3]
 [7 8 9]]
split_ndarray_2d[1]:  [[ 4  5  6]
 [10 11 12]]

1-17. Division des tableaux [Génération des tableaux par division des éléments]

Matrice 3D


import numpy as np
sample_ndarray_3d = np.array([[[1,2],[3,4]],[[5,6],[7,8]]])
print("sample_ndarray_3d: ",sample_ndarray_3d)
sample_ndarray_3d:  [[[1 2]
  [3 4]]

 [[5 6]
  [7 8]]]

split_ndarray_3d = np.dsplit(sample_ndarray_3d,2)
print("split_ndarray_3d[0]: ",split_ndarray_3d[0])
print("split_ndarray_3d[1]: ",split_ndarray_3d[1])
split_ndarray_3d[0]:  [[[1]
  [3]]

 [[5]
  [7]]]
split_ndarray_3d[1]:  [[[2]
  [4]]

 [[6]
  [8]]]

2. Définition des données

2-1. Zero Array

Tableau à 1 dimension


import numpy as np
zero_ndarray_1d = np.zeros(5)
print("zero_ndarray_1d: ",zero_ndarray_1d)
zero_ndarray_1d:  [0. 0. 0. 0. 0.]

Un tableau bidimensionnel


import numpy as np
zero_ndarray_2d = np.zeros((2,3))
print("zero_ndarray_2d: ",zero_ndarray_2d)
zero_ndarray_2d:  [[0. 0. 0.]
 [0. 0. 0.]]

Copie de taille de tableau


import numpy as np
sample_ndarray = np.array([[1,2,3,4,5],[6,7,8,9,10]])
zero_ndarray = np.zeros_like(sample_ndarray)
print("zero ndarray: ",zero_ndarray)
zero ndarray:  [[0 0 0 0 0]
 [0 0 0 0 0]]

2-2. Tableau d'unités [Méthode 1](Tableau d'identité)

Réseau d'unités[Décalage: aucun]


import numpy as np
identity_ndarray = np.eye(3)
print("identity ndarray: ",identity_ndarray)
identity ndarray:  [[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]

Réseau d'unités[Offset: Oui]


import numpy as np
offset = 1
identity_ndarray = np.eye(3,k=offset)
print("identity ndarray: ",identity_ndarray)
identity ndarray:  [[0. 1. 0.]
 [0. 0. 1.]
 [0. 0. 0.]]

import numpy as np
offset = -1
identity_ndarray = np.eye(3,k=offset)
print("identity ndarray: ",identity_ndarray)
identity ndarray:  [[0. 0. 0.]
 [1. 0. 0.]
 [0. 1. 0.]]

2-3. Tableau d'unités [Méthode 2](Tableau d'identité)

Réseau d'unités[Décalage: aucun]


import numpy as np
identity_ndarray = np.identity(3)
print("identity ndarray: ",identity_ndarray)

2-3. Tableau vide

Tableau à 1 dimension


import numpy as np
empty_ndarray_1d = np.empty(5)
print("empty_ndarray_1d: ",empty_ndarray_1d)
empty_ndarray_1d:  [4.94065646e-324 4.94065646e-324 0.00000000e+000 0.00000000e+000
 1.32373351e+079]

Un tableau bidimensionnel


import numpy as np
empty_ndarray_2d = np.empty((2,3))
print("empty_ndarray_2d: ",empty_ndarray_2d)
empty_ndarray_2d:  [[0. 0. 0.]
 [0. 0. 0.]]

2-2. Tableau de valeurs spécifiées

Tableau à 1 dimension


import numpy as np
specified_value = 10
array_size = 5
specified_value_ndarray = np.empty(array_size)
specified_value_ndarray.fill(specified_value)
print("specified_value_ndarray: ",specified_value_ndarray)
specified_value_ndarray:  [10. 10. 10. 10. 10.]

Un tableau bidimensionnel


import numpy as np
specified_value = 3
array_size = (2,3)
specified_value_ndarray = np.empty(array_size)
specified_value_ndarray.fill(specified_value)
print("specified_value_ndarray: ",specified_value_ndarray)
specified_value_ndarray:  [[3. 3. 3.]
 [3. 3. 3.]]

2-4. Liste des séquences arithmétiques

Tableau à 1 dimension


start_num = 1
end_num = 10
difference = 1
arithmetic_sequence_ndarray = np.array(range(start_num, end_num + 1, difference))
print("arithmetic sequence ndarray: ",arithmetic_sequence_ndarray)

Recommended Posts

[Introduction à Python] <numpy ndarray> [modifier le 22/02/2020]
[Introduction à Python] <liste> [modifier le 22/02/2020]
Introduction à la bibliothèque de calcul numérique Python NumPy
Introduction au langage Python
Introduction à OpenCV (python) - (2)
Introduction à Python Django (2) Win
Introduction à la communication série [Python]
Introduction à Python (version Python APG4b)
Une introduction à la programmation Python
Introduction à Python pour, pendant
Convertir le tableau NumPy "ndarray" en lilt en Python [tolist ()]
Introduction à Python numpy pandas matplotlib (pour ~ B3 ~ part2)
[Présentation de l'application Udemy Python3 +] 58. Lambda
[Présentation de l'application Udemy Python3 +] 31. Commentaire
Accès en indice au tableau numpy python
Entraine toi! !! Introduction au type Python (conseils de type)
[Introduction à Python3 Jour 1] Programmation et Python
[Présentation de l'application Udemy Python3 +] 57. Décorateur
Introduction à Python Hands On Partie 1
[Introduction à Python3 Jour 13] Chapitre 7 Chaînes de caractères (7.1-7.1.1.1)
[Introduction à Python] Comment analyser JSON
[Présentation de l'application Udemy Python3 +] 56. Clôture
[Introduction à Python3 Jour 14] Chapitre 7 Chaînes de caractères (7.1.1.1 à 7.1.1.4)
Introduction à Protobuf-c (langage C ⇔ Python)
[Présentation de l'application Udemy Python3 +] 59. Générateur
[Introduction à Python3 Jour 15] Chapitre 7 Chaînes de caractères (7.1.2-7.1.2.2)
[Introduction à Python] Utilisons les pandas
[Introduction à Python] Utilisons les pandas
[Introduction à l'application Udemy Python3 +] Résumé
Introduction à l'analyse d'image opencv python
[Introduction à Python] Utilisons les pandas
Premiers pas avec Python pour les non-ingénieurs
Introduction à Python Django (2) Édition Mac
[AWS SAM] Présentation de la version Python
[Introduction à Python3 Day 21] Chapitre 10 Système (10.1 à 10.5)
[Tutoriel Python] Une introduction facile à Python
[Introduction à Udemy Python3 + Application] 63. Notation d'inclusion du générateur
[Introduction à l'application Udemy Python3 +] 28. Type collectif
[Introduction à Python] Comment utiliser la classe en Python?
[Introduction à Udemy Python3 + Application] 25. Méthode de type dictionnaire
[Introduction à l'application Udemy Python3 +] 33. instruction if
Introduction à la simulation d'événements discrets à l'aide de Python # 1
[Introduction à Udemy Python3 + Application] 13. Méthode de caractères
[Introduction à Python3, jour 17] Chapitre 8 Destinations de données (8.1-8.2.5)
[Introduction à l'application Udemy Python3 +] 55. Fonctions intégrées
[Introduction à l'application Udemy Python3 +] 48. Définition des fonctions
[Introduction à Python3, jour 17] Chapitre 8 Destinations de données (8.3-8.3.6.1)
Super Introduction Arithmétique Bit Python
[Introduction à l'application Udemy Python3 +] 10. Valeur numérique
Introduction au remplissage d'image Python Remplissage d'image à l'aide d'ImageDataGenerator
Web-WF Python Tornado Partie 3 (Introduction à Openpyexcel)
[Introduction à l'application Udemy Python3 +] 21. Type Taple
[Introduction à l'application Udemy Python3 +] 45. fonction enumerate
[Introduction à l'application Udemy Python3 +] 41. fonction d'entrée
[Introduction à Python] Utilisons foreach avec Python
[Introduction à Python3 Jour 19] Chapitre 8 Destinations de données (8.4-8.5)
[Introduction à l'application Udemy Python3 +] 17. Opération de liste
[Introduction à l'application Udemy Python3 +] 65. Gestion des exceptions
[Introduction à Python3 Day 18] Chapitre 8 Destinations de données (8.3.6.2 à 8.3.6.3)