Trovare i Valori Più Piccoli di una Colonna
Impareremo un'altra funzione fondamentale, che restituisce i valori più piccoli o più grandi. Sai già che possiamo ordinare i valori ed estrarre un numero specifico di righe. Non sorprende che pandas possa farlo utilizzando una sola riga di codice. Osserva l'esempio su come recuperare le quindici auto più vecchie:
1234import 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))
Se desideri ordinare prima per una colonna e poi per un'altra, inserisci semplicemente un elenco con i nomi delle colonne nell'ordine necessario. Osserva l'esempio in cui ordineremo prima per 'Year'
e poi per 'Engine_volume'
. Questo codice estrarrà prima le 5
auto più vecchie e, se gli anni coincidono, avrà la precedenza l'auto con il valore minore nella colonna 'Engine_volume'
:
1234import 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())
Confrontare i due esempi riportati di seguito. Ora approfondiremo leggermente la funzione. Restituiamo i nostri esempi utilizzando i valori della colonna 'Year'
. Nella nostra colonna, i valori 'Year'
possono essere ripetuti; quindi, se desideriamo ottenere le dieci auto più vecchie con la sintassi precedente, la funzione selezionerà semplicemente dieci valori, senza considerare se l'undicesimo o il dodicesimo valore siano uguali al decimo. Per evitare tali casi, è possibile inserire l'argomento keep = 'all'
nel metodo .nsmallest()
. Osservare l'esempio ed eseguirlo per vedere la differenza:
1234567891011import 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)
Swipe to start coding
Infine, è il momento di esercitarsi! Qui, si dovrebbe seguire questo algoritmo:
- Recuperare i dati sulle auto in cui i valori della colonna
'Year'
sono maggiori di2010
. - Estrarre le
15
auto più economiche (i15
valori più bassi della colonna'Price'
). Includere tutti i valori duplicati della colonna'Price'
. - Visualizzare tutti i valori del set di dati
data_cheapest
.
Soluzione
Grazie per i tuoi commenti!
single
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Can you explain what the `nsmallest()` function does in pandas?
What does the `keep='all'` argument change in the output?
How can I use `nlargest()` instead of `nsmallest()` for the largest values?
Awesome!
Completion rate improved to 3.03
Trovare i Valori Più Piccoli di una Colonna
Scorri per mostrare il menu
Impareremo un'altra funzione fondamentale, che restituisce i valori più piccoli o più grandi. Sai già che possiamo ordinare i valori ed estrarre un numero specifico di righe. Non sorprende che pandas possa farlo utilizzando una sola riga di codice. Osserva l'esempio su come recuperare le quindici auto più vecchie:
1234import 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))
Se desideri ordinare prima per una colonna e poi per un'altra, inserisci semplicemente un elenco con i nomi delle colonne nell'ordine necessario. Osserva l'esempio in cui ordineremo prima per 'Year'
e poi per 'Engine_volume'
. Questo codice estrarrà prima le 5
auto più vecchie e, se gli anni coincidono, avrà la precedenza l'auto con il valore minore nella colonna 'Engine_volume'
:
1234import 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())
Confrontare i due esempi riportati di seguito. Ora approfondiremo leggermente la funzione. Restituiamo i nostri esempi utilizzando i valori della colonna 'Year'
. Nella nostra colonna, i valori 'Year'
possono essere ripetuti; quindi, se desideriamo ottenere le dieci auto più vecchie con la sintassi precedente, la funzione selezionerà semplicemente dieci valori, senza considerare se l'undicesimo o il dodicesimo valore siano uguali al decimo. Per evitare tali casi, è possibile inserire l'argomento keep = 'all'
nel metodo .nsmallest()
. Osservare l'esempio ed eseguirlo per vedere la differenza:
1234567891011import 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)
Swipe to start coding
Infine, è il momento di esercitarsi! Qui, si dovrebbe seguire questo algoritmo:
- Recuperare i dati sulle auto in cui i valori della colonna
'Year'
sono maggiori di2010
. - Estrarre le
15
auto più economiche (i15
valori più bassi della colonna'Price'
). Includere tutti i valori duplicati della colonna'Price'
. - Visualizzare tutti i valori del set di dati
data_cheapest
.
Soluzione
Grazie per i tuoi commenti!
single