Recherche de site Web

Obtenir des valeurs uniques d'une liste en Python


Dans cet article, nous allons explorer 3 façons d'obtenir des valeurs uniques à partir d'une liste Python. Lorsque nous traitons une grande quantité de données brutes, nous rencontrons souvent des situations dans lesquelles nous devons extraire l'ensemble de données unique et non répété des données d'entrée brutes.

Les méthodes énumérées ci-dessous vous aideront à résoudre ce problème. Entrons directement dans le vif du sujet !

Manières d'obtenir des valeurs uniques d'une liste en Python

Chacune des manières suivantes peut être utilisée pour obtenir des valeurs uniques d'une liste en Python :

  • Méthode set() en Python
  • Utiliser la méthode list.append() de Python avec une boucle for
  • Utiliser la méthode numpy.unique() de Python

1. Set() en Python pour obtenir des valeurs uniques d'une liste

Comme vu dans notre tutoriel précédent sur les ensembles Python, nous savons qu'un ensemble stocke une seule copie des valeurs en double. Cette propriété de l'ensemble peut être utilisée pour obtenir des valeurs uniques à partir d'une liste en Python.

  • Au départ, nous devrons convertir la liste d'entrée en ensemble en utilisant la fonction set().

Syntaxe :

set(input_list_name)
  • Comme la liste est convertie en ensemble, seule une copie de tous les éléments dupliqués y est placée.
  • Ensuite, nous devrons convertir l'ensemble en liste en utilisant la commande/déclaration ci-dessous :

Syntaxe :

list(set-name)
  • Enfin, imprimez la nouvelle liste

Exemple :

list_inp = [100, 75, 100, 20, 75, 12, 75, 25] 

set_res = set(list_inp) 
print("The unique elements of the input list using set():\n") 
list_res = (list(set_res))
 
for item in list_res: 
    print(item) 

Sortie :

The unique elements of the input list using set():

25
75
100
20
12

2. La méthode list.append() en Python et la boucle for

Afin de trouver les éléments uniques, nous pouvons appliquer une boucle for en Python avec la fonction list.append() pour parvenir au même résultat.

  • Au départ, nous créons une nouvelle liste (vide), c'est-à-dire res_list.
  • Après cela, en utilisant une boucle for, nous vérifions la présence d'un élément particulier dans la nouvelle liste créée (res_list). Si l'élément n'est pas présent, il est ajouté à la nouvelle liste en utilisant la méthode append().

Syntaxe :

list.append(value)
  • Dans le cas où nous rencontrons un élément lors de la traversée qui existe déjà dans la nouvelle liste, c'est-à-dire un élément dupliqué, ce cas est négligé par la boucle for. Nous utiliserons l'instruction if pour vérifier s'il s'agit d'un élément unique ou d'un élément dupliqué.

Exemple :

list_inp = [100, 75, 100, 20, 75, 12, 75, 25] 

res_list = []

for item in list_inp: 
    if item not in res_list: 
        res_list.append(item) 

print("Unique elements of the list using append():\n")    
for item in res_list: 
    print(item) 
      

Sortie :

Unique elements of the list using append():

100
75
20
12
25

3. La fonction numpy.unique() de Python pour créer une liste d'éléments uniques

Le module Python NumPy a une fonction intégrée nommée numpy.unique pour récupérer des éléments de données uniques d'un tableau numpy.

  • Afin d'obtenir des éléments uniques d'une liste Python, nous devrons convertir la liste en tableau NumPy en utilisant la commande ci-dessous :

Syntaxe :

numpy.array(list-name)
  • Ensuite, nous utiliserons la méthode numpy.unique() pour récupérer les éléments de données uniques du tableau numpy.
  • et enfin, nous imprimerons la liste résultante.

Syntaxe :

numpy.unique(numpy-array-name)

Exemple :

import numpy as N
list_inp = [100, 75, 100, 20, 75, 12, 75, 25] 

res = N.array(list_inp) 
unique_res = N.unique(res) 
print("Unique elements of the list using numpy.unique():\n")
print(unique_res)
      

Sortie :

Unique elements of the list using numpy.unique():

[12  20  25  75 100]

Conclusion

Dans cet article, nous avons dévoilé plusieurs façons d'extraire les valeurs uniques d'un ensemble d'éléments de données dans une liste Python.

Références

  • Fonction NumPy : numpy.unique() - Documentation de SciPy