Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Recherche des Plus Petites Valeurs d'une Colonne | Extraction de Données
Techniques Avancées dans Pandas

bookRecherche des Plus Petites Valeurs d'une Colonne

Vous allez découvrir une autre fonction essentielle, qui permet d'obtenir les plus petites ou les plus grandes valeurs. Vous savez déjà que l'on peut trier les valeurs puis extraire un nombre spécifique de lignes. Sans surprise, pandas permet de le faire en une seule ligne de code. Voici un exemple pour récupérer les quinze voitures les plus anciennes :

1234
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/cars.csv', index_col = 0) data_smallest = data.nsmallest(15, 'Year') print(data_smallest.head(15))
copy

Pour trier d'abord par une colonne puis par une autre, il suffit de placer une liste contenant les noms des colonnes dans l'ordre souhaité. Voici un exemple où l'on trie d'abord par 'Year', puis par 'Engine_volume'. Ce code extrait d'abord les 5 voitures les plus anciennes, puis, si les années sont identiques, la voiture ayant la plus petite valeur dans la colonne 'Engine_volume' sera prioritaire :

1234
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/cars.csv', index_col = 0) data_smallest = data.nsmallest(5, ['Year', 'Engine_volume']) print(data_smallest.head())
copy

Essayez de comparer les deux exemples ci-dessous. Nous allons maintenant approfondir un peu la fonction. Revenons à nos exemples avec les valeurs de la colonne 'Year'. Dans notre colonne, les valeurs 'Year' peuvent être répétées, donc si l'on souhaite afficher les dix voitures les plus anciennes avec la syntaxe précédente, la fonction ne prendra que dix valeurs. Elle ne prend pas en compte si la 11ᵉ ou la 12ᵉ valeur est identique à la 10ᵉ. Il est possible d'ajouter l'argument keep = 'all' à la méthode .nsmallest() pour éviter de tels cas. Consultez l'exemple et essayez de l'exécuter pour observer la différence :

1234567891011
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/cars.csv', index_col = 0) # Case without using `keep = 'all'` argument data_smallest = data.nsmallest(6, 'Year') print(data_smallest) data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/cars.csv', index_col = 0) # Case with using `keep = 'all'` argument data_smallest = data.nsmallest(6, 'Year', keep = 'all') print(data_smallest)
copy
Tâche

Swipe to start coding

Ici, il convient de suivre cet algorithme :

  1. Extraire les données des voitures dont les valeurs de la colonne 'Year' sont supérieures à 2010.
  2. Sélectionner les 15 voitures les moins chères (les 15 plus petites valeurs de la colonne 'Price'). Inclure toutes les valeurs dupliquées de la colonne 'Price'.
  3. Afficher toutes les valeurs de l'ensemble de données data_cheapest.

Solution

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 5
single

single

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

close

Awesome!

Completion rate improved to 3.03

bookRecherche des Plus Petites Valeurs d'une Colonne

Glissez pour afficher le menu

Vous allez découvrir une autre fonction essentielle, qui permet d'obtenir les plus petites ou les plus grandes valeurs. Vous savez déjà que l'on peut trier les valeurs puis extraire un nombre spécifique de lignes. Sans surprise, pandas permet de le faire en une seule ligne de code. Voici un exemple pour récupérer les quinze voitures les plus anciennes :

1234
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/cars.csv', index_col = 0) data_smallest = data.nsmallest(15, 'Year') print(data_smallest.head(15))
copy

Pour trier d'abord par une colonne puis par une autre, il suffit de placer une liste contenant les noms des colonnes dans l'ordre souhaité. Voici un exemple où l'on trie d'abord par 'Year', puis par 'Engine_volume'. Ce code extrait d'abord les 5 voitures les plus anciennes, puis, si les années sont identiques, la voiture ayant la plus petite valeur dans la colonne 'Engine_volume' sera prioritaire :

1234
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/cars.csv', index_col = 0) data_smallest = data.nsmallest(5, ['Year', 'Engine_volume']) print(data_smallest.head())
copy

Essayez de comparer les deux exemples ci-dessous. Nous allons maintenant approfondir un peu la fonction. Revenons à nos exemples avec les valeurs de la colonne 'Year'. Dans notre colonne, les valeurs 'Year' peuvent être répétées, donc si l'on souhaite afficher les dix voitures les plus anciennes avec la syntaxe précédente, la fonction ne prendra que dix valeurs. Elle ne prend pas en compte si la 11ᵉ ou la 12ᵉ valeur est identique à la 10ᵉ. Il est possible d'ajouter l'argument keep = 'all' à la méthode .nsmallest() pour éviter de tels cas. Consultez l'exemple et essayez de l'exécuter pour observer la différence :

1234567891011
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/cars.csv', index_col = 0) # Case without using `keep = 'all'` argument data_smallest = data.nsmallest(6, 'Year') print(data_smallest) data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/cars.csv', index_col = 0) # Case with using `keep = 'all'` argument data_smallest = data.nsmallest(6, 'Year', keep = 'all') print(data_smallest)
copy
Tâche

Swipe to start coding

Ici, il convient de suivre cet algorithme :

  1. Extraire les données des voitures dont les valeurs de la colonne 'Year' sont supérieures à 2010.
  2. Sélectionner les 15 voitures les moins chères (les 15 plus petites valeurs de la colonne 'Price'). Inclure toutes les valeurs dupliquées de la colonne 'Price'.
  3. Afficher toutes les valeurs de l'ensemble de données data_cheapest.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 5
single

single

some-alt