Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Finde de Mindste Værdier i en Kolonne | Udtrækning af Data
Avancerede Teknikker i Pandas

bookFinde de Mindste Værdier i en Kolonne

Vi vil lære en anden vigtig funktion, som returnerer de mindste eller største værdier. Du ved allerede, at vi kan sortere værdier og derefter udtrække et bestemt antal rækker. Ikke overraskende kan pandas gøre dette med kun én linje kode. Se eksemplet på, hvordan man henter de ældste femten biler:

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 vil sortere efter én kolonne og derefter efter en anden, skal du blot angive en liste med kolonnenavne i den ønskede rækkefølge. Se eksemplet, hvor vi først sorterer efter 'Year' og derefter efter 'Engine_volume'. Denne kode vil først udtrække de 5 ældste biler, og hvis årstallene er ens, vil bilen med den laveste værdi 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 eksempler nedenfor. Nu udvider vi funktionen en smule. Vi returnerer eksempler med kolonnens 'Year'-værdier. I kolonnen kan 'Year'-værdier gentages, så hvis vi ønsker at vise de ti ældste biler med den tidligere syntaks, vil funktionen kun tage ti værdier. Den tager ikke højde for, om den 11. eller 12. værdi er den samme som den 10. Vi kan tilføje argumentet keep = 'all' til .nsmallest()-metoden for at undgå sådanne tilfælde. Se eksemplet og prøv at køre det for at se forskellen:

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
Opgave

Swipe to start coding

Endelig er det tid til at øve! Her skal du følge denne algoritme:

  1. Hent data om biler, hvor kolonnen 'Year' har værdier større end 2010.
  2. Udtræk de billigste 15 biler (de 15 mindste værdier i kolonnen 'Price'). Inkluder alle duplikerede værdier i kolonnen 'Price'.
  3. Udskriv alle værdier i datasættet data_cheapest.

Løsning

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 3. Kapitel 5
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Suggested prompts:

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?

close

Awesome!

Completion rate improved to 3.03

bookFinde de Mindste Værdier i en Kolonne

Stryg for at vise menuen

Vi vil lære en anden vigtig funktion, som returnerer de mindste eller største værdier. Du ved allerede, at vi kan sortere værdier og derefter udtrække et bestemt antal rækker. Ikke overraskende kan pandas gøre dette med kun én linje kode. Se eksemplet på, hvordan man henter de ældste femten biler:

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 vil sortere efter én kolonne og derefter efter en anden, skal du blot angive en liste med kolonnenavne i den ønskede rækkefølge. Se eksemplet, hvor vi først sorterer efter 'Year' og derefter efter 'Engine_volume'. Denne kode vil først udtrække de 5 ældste biler, og hvis årstallene er ens, vil bilen med den laveste værdi 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 eksempler nedenfor. Nu udvider vi funktionen en smule. Vi returnerer eksempler med kolonnens 'Year'-værdier. I kolonnen kan 'Year'-værdier gentages, så hvis vi ønsker at vise de ti ældste biler med den tidligere syntaks, vil funktionen kun tage ti værdier. Den tager ikke højde for, om den 11. eller 12. værdi er den samme som den 10. Vi kan tilføje argumentet keep = 'all' til .nsmallest()-metoden for at undgå sådanne tilfælde. Se eksemplet og prøv at køre det for at se forskellen:

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
Opgave

Swipe to start coding

Endelig er det tid til at øve! Her skal du følge denne algoritme:

  1. Hent data om biler, hvor kolonnen 'Year' har værdier større end 2010.
  2. Udtræk de billigste 15 biler (de 15 mindste værdier i kolonnen 'Price'). Inkluder alle duplikerede værdier i kolonnen 'Price'.
  3. Udskriv alle værdier i datasættet data_cheapest.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 3. Kapitel 5
single

single

some-alt