Maison  >  Article  >  développement back-end  >  Regrouper des éléments dans une matrice en utilisant Python

Regrouper des éléments dans une matrice en utilisant Python

王林
王林avant
2023-08-28 14:01:06602parcourir

Regrouper des éléments dans une matrice en utilisant Python

Matrix est largement utilisé dans divers domaines, notamment les mathématiques, la physique et l'informatique. Dans certains cas, nous devons regrouper les éléments d'une matrice en fonction de certains critères. On peut regrouper les éléments d'une matrice par lignes, colonnes, valeurs, conditions, etc. Dans cet article, nous allons apprendre à regrouper les éléments d'une matrice à l'aide de Python.

Créer une matrice

Avant d'aborder les méthodes de regroupement, nous pouvons d'abord créer une matrice en Python. Nous pouvons manipuler efficacement des matrices en utilisant la bibliothèque NumPy. Voici comment créer une matrice à l'aide de NumPy :

Exemple

Le code ci-dessous crée une matrice 3x3 avec des valeurs allant de 1 à 9.

import numpy as np

# Creating a 3x3 matrix
matrix = np.array([[1, 2, 3],
                   [4, 5, 6],
                   [7, 8, 9]])

print(matrix)

Sortie

[[1 2 3]
 [4 5 6]
 [7 8 9]]

Regrouper les éléments par ligne ou colonne

Le moyen le plus simple de regrouper des éléments dans une matrice est par ligne ou par colonne. Nous pouvons facilement y parvenir en utilisant des index en Python.

Grouper par ligne

Pour regrouper les éléments par lignes, nous pouvons utiliser la matrice de notation d'index [row_index]. Par exemple, pour regrouper la deuxième ligne dans une matrice, on peut utiliser matrice[1].

Grammaire

matrix[row_index]

Ici, Matrix fait référence au nom de la matrice ou du tableau dont on souhaite extraire une ligne spécifique. row_index représente l'index de la ligne à laquelle nous voulons accéder. En Python, l'indexation commence à 0, donc la première ligne est appelée 0, la deuxième ligne est appelée 1, et ainsi de suite.

Exemple

import numpy as np

# Creating a 3x3 matrix
matrix = np.array([[1, 2, 3],
                   [4, 5, 6],
                   [7, 8, 9]])


row_index = 1
grouped_row = matrix[row_index]
print(grouped_row)

Sortie

[4 5 6]

Grouper par colonne

Pour regrouper les éléments par colonne, nous pouvons utiliser la matrice de notation d'index[:,column_index]. Par exemple, pour regrouper la troisième colonne dans une matrice, on peut utiliser matrice[:, 2].

Exemple

import numpy as np

# Creating a 3x3 matrix
matrix = np.array([[1, 2, 3],
                   [4, 5, 6],
                   [7, 8, 9]])


column_index = 2
grouped_column = matrix[:, column_index]
print(grouped_column)

Sortie

[3 6 9]

Regrouper les éléments par condition

Dans de nombreux cas, nous devons regrouper les éléments en fonction de certains critères plutôt que par ligne ou colonne. Nous explorerons deux manières d’y parvenir : le regroupement par valeur et le regroupement par condition.

Grouper par valeur

Pour regrouper des éléments dans une matrice en fonction de valeurs, nous pouvons utiliser la fonction Where de NumPy. Le regroupement des éléments dans une matrice par valeur nous permet d'identifier et d'extraire facilement des éléments d'intérêt spécifiques. Cette méthode est particulièrement utile lorsque nous devons analyser ou manipuler des éléments d'une matrice qui ont certaines valeurs.

Grammaire

np.where(condition[, x, y])

Ici, la condition est la condition à évaluer. Il peut s'agir d'un tableau booléen ou d'une expression qui renvoie un tableau booléen x (facultatif) : la ou les valeurs à renvoyer lorsque la condition est vraie. être un objet scalaire ou de type tableau. y (facultatif) : la ou les valeurs à renvoyer lorsque la condition est fausse. Il peut s'agir d'un objet scalaire ou de type tableau.

Exemple

.
import numpy as np

# Creating a 3x3 matrix
matrix = np.array([[1, 2, 3],
                   [4, 5, 6],
                   [7, 8, 9]])

value = 2
grouped_elements = np.where(matrix == value)
print(grouped_elements)

Sortie

(array([0]), array([1]))

Grouper par condition

Vous pouvez également utiliser la fonction Where de NumPy pour regrouper des éléments dans une matrice en fonction de conditions spécifiques. Prenons un exemple où nous souhaitons regrouper tous les éléments supérieurs à 5.

Grammaire

np.where(condition[, x, y])

Ici, la condition est la condition à évaluer. Il peut s'agir d'un tableau booléen ou d'une expression qui renvoie un tableau booléen x (facultatif) : la ou les valeurs à renvoyer lorsque la condition est vraie. être un objet scalaire ou de type tableau. y (facultatif) : la ou les valeurs à renvoyer lorsque la condition est fausse. Il peut s'agir d'un objet scalaire ou de type tableau.

Exemple

.
import numpy as np

# Creating a 3x3 matrix
matrix = np.array([[1, 2, 3],
                   [4, 5, 6],
                   [7, 8, 9]])

condition = matrix > 5
grouped_elements = np.where(condition)
print(grouped_elements)

Sortie

(array([1, 2, 2, 2]), array([2, 0, 1, 2]))

Regrouper les éléments par itération

Une autre façon de regrouper des éléments dans une matrice consiste à parcourir ses lignes ou ses colonnes et à collecter les éléments requis. Cette approche nous donne plus de flexibilité pour effectuer des opérations supplémentaires sur des éléments groupés.

Grammaire

list_name.append(element)

Ici, la fonction append() est une méthode de liste utilisée pour ajouter un élément à la fin du nom_liste. Elle modifie la liste d'origine en ajoutant l'élément spécifié en tant que nouvel élément.

Exemple

import numpy as np

# Creating a 3x3 matrix
matrix = np.array([[1, 2, 3],
                   [4, 5, 6],
                   [7, 8, 9]])

grouped_rows = []

for row in matrix:
    grouped_rows.append(row)

print(grouped_rows)

Sortie

[array([1, 2, 3]), array([4, 5, 6]), array([7, 8, 9])]

Conclusion

Dans cet article, nous avons expliqué comment regrouper différents éléments dans une matrice à l'aide des fonctions intégrées de Python. Nous avons d'abord créé la matrice à l'aide de la bibliothèque NumPy, puis avons discuté de diverses techniques de regroupement. Nous avons couvert le regroupement par lignes et colonnes, ainsi que le regroupement par valeurs et conditions à l'aide de la fonction Where dans NumPy.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer