Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Finne de minste verdiene i en kolonne | Uttrekking av Data
Avanserte Teknikker i Pandas

bookFinne de minste verdiene i en kolonne

Du vil lære en annen viktig funksjon, som returnerer de minste eller største verdiene. Du vet allerede at vi kan sortere verdier og deretter hente ut et bestemt antall rader. Ikke overraskende kan pandas gjøre dette med kun én kodelinje. Se eksempelet på hvordan du henter ut de femten eldste bilene:

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

Hvis du ønsker å sortere etter én kolonne og deretter en annen, setter du bare en liste med kolonnenavn i ønsket rekkefølge. Se eksempelet hvor vi først sorterer etter 'Year' og deretter etter 'Engine_volume'. Denne koden vil først hente ut de 5 eldste bilene, og hvis årstallene er like, vil bilen med lavest verdi i kolonnen 'Engine_volume' få prioritet:

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

Sammenlign de to eksemplene nedenfor. Nå skal vi utvide funksjonen litt. La oss returnere eksemplene våre med kolonnenes 'Year'-verdier. I kolonnen vår kan 'Year'-verdiene gjentas, så hvis vi ønsker å vise de ti eldste bilene med tidligere syntaks, vil funksjonen bare ta ti verdier. Den tar ikke hensyn til om den 11. eller 12. verdien er lik den 10. Vi kan legge til argumentet keep = 'all' i .nsmallest()-metoden for å unngå slike tilfeller. Se på eksemplet, og prøv å kjøre det for å se forskjellen:

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
Oppgave

Swipe to start coding

Her bør du følge denne algoritmen:

  1. Hent data om biler der kolonnen 'Year' har verdier større enn 2010.
  2. Ekstraher de 15 billigste bilene (de 15 laveste verdiene i kolonnen 'Price'). Inkluder alle dupliserte verdier i kolonnen 'Price'.
  3. Skriv ut alle verdier i datasettet data_cheapest.

Løsning

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 3. Kapittel 5
single

single

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

close

Awesome!

Completion rate improved to 3.03

bookFinne de minste verdiene i en kolonne

Sveip for å vise menyen

Du vil lære en annen viktig funksjon, som returnerer de minste eller største verdiene. Du vet allerede at vi kan sortere verdier og deretter hente ut et bestemt antall rader. Ikke overraskende kan pandas gjøre dette med kun én kodelinje. Se eksempelet på hvordan du henter ut de femten eldste bilene:

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

Hvis du ønsker å sortere etter én kolonne og deretter en annen, setter du bare en liste med kolonnenavn i ønsket rekkefølge. Se eksempelet hvor vi først sorterer etter 'Year' og deretter etter 'Engine_volume'. Denne koden vil først hente ut de 5 eldste bilene, og hvis årstallene er like, vil bilen med lavest verdi i kolonnen 'Engine_volume' få prioritet:

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

Sammenlign de to eksemplene nedenfor. Nå skal vi utvide funksjonen litt. La oss returnere eksemplene våre med kolonnenes 'Year'-verdier. I kolonnen vår kan 'Year'-verdiene gjentas, så hvis vi ønsker å vise de ti eldste bilene med tidligere syntaks, vil funksjonen bare ta ti verdier. Den tar ikke hensyn til om den 11. eller 12. verdien er lik den 10. Vi kan legge til argumentet keep = 'all' i .nsmallest()-metoden for å unngå slike tilfeller. Se på eksemplet, og prøv å kjøre det for å se forskjellen:

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
Oppgave

Swipe to start coding

Her bør du følge denne algoritmen:

  1. Hent data om biler der kolonnen 'Year' har verdier større enn 2010.
  2. Ekstraher de 15 billigste bilene (de 15 laveste verdiene i kolonnen 'Price'). Inkluder alle dupliserte verdier i kolonnen 'Price'.
  3. Skriv ut alle verdier i datasettet data_cheapest.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 3. Kapittel 5
single

single

some-alt