Finne 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:
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))
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:
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())
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:
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
Her bør du følge denne algoritmen:
- Hent data om biler der kolonnen
'Year'har verdier større enn2010. - Ekstraher de
15billigste bilene (de15laveste verdiene i kolonnen'Price'). Inkluder alle dupliserte verdier i kolonnen'Price'. - Skriv ut alle verdier i datasettet
data_cheapest.
Løsning
Takk for tilbakemeldingene dine!
single
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Awesome!
Completion rate improved to 3.03
Finne 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:
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))
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:
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())
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:
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
Her bør du følge denne algoritmen:
- Hent data om biler der kolonnen
'Year'har verdier større enn2010. - Ekstraher de
15billigste bilene (de15laveste verdiene i kolonnen'Price'). Inkluder alle dupliserte verdier i kolonnen'Price'. - Skriv ut alle verdier i datasettet
data_cheapest.
Løsning
Takk for tilbakemeldingene dine!
single