Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Sarakkeen Pienimpien Arvojen Etsiminen | Datan Poimiminen
Edistyneet Tekniikat Pandas-Kirjastossa

bookSarakkeen Pienimpien Arvojen Etsiminen

Opit toisen tärkeän funktion, joka palauttaa sarakkeen pienimmät tai suurimmat arvot. Tiedät jo, että voimme lajitella arvot ja poimia tietyn määrän rivejä. Ei ole yllättävää, että pandas mahdollistaa tämän yhdellä koodirivillä. Katso esimerkkiä, jossa haetaan viidentoista vanhimman auton tiedot:

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

Jos haluat lajitella ensin yhden sarakkeen ja sitten toisen mukaan, aseta sarakkeiden nimet listaan haluttuun järjestykseen. Katso esimerkkiä, jossa lajitellaan ensin 'Year'-sarakkeen ja sitten 'Engine_volume'-sarakkeen mukaan. Tämä koodi poimii ensin 5 vanhinta autoa, ja jos vuosiluku on sama, pienemmän 'Engine_volume'-arvon omaava auto asetetaan etusijalle:

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

Vertaa alla olevia kahta esimerkkiä. Nyt kehitämme toimintoa hieman pidemmälle. Palautetaan esimerkit sarakkeen 'Year' arvojen perusteella. Sarakkeessa 'Year' arvot voivat toistua, joten jos haluamme tulostaa kymmenen vanhinta autoa aiemmalla syntaksilla, funktio palauttaa vain kymmenen arvoa. Se ei huomioi, vaikka 11. tai 12. arvo olisi sama kuin 10. Voimme lisätä argumentin keep = 'all' metodiin .nsmallest() estääksemme tällaiset tapaukset. Katso esimerkkiä ja suorita se nähdäksesi ero:

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
Tehtävä

Swipe to start coding

Noudata tässä seuraavaa algoritmia:

  1. Hae autot, joiden sarakkeen 'Year' arvot ovat suurempia kuin 2010.
  2. Poimi 15 edullisinta autoa (sarakkeen 15 'Price' pienintä arvoa). Sisällytä kaikki sarakkeen 'Price' päällekkäiset arvot.
  3. Tulosta kaikki arvot tietojoukosta data_cheapest.

Ratkaisu

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 5
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Suggested prompts:

Can you explain what the `keep='all'` argument does in more detail?

How does `.nsmallest()` differ from sorting and slicing the DataFrame?

Can I use `.nlargest()` in a similar way to get the newest cars?

close

Awesome!

Completion rate improved to 3.03

bookSarakkeen Pienimpien Arvojen Etsiminen

Pyyhkäise näyttääksesi valikon

Opit toisen tärkeän funktion, joka palauttaa sarakkeen pienimmät tai suurimmat arvot. Tiedät jo, että voimme lajitella arvot ja poimia tietyn määrän rivejä. Ei ole yllättävää, että pandas mahdollistaa tämän yhdellä koodirivillä. Katso esimerkkiä, jossa haetaan viidentoista vanhimman auton tiedot:

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

Jos haluat lajitella ensin yhden sarakkeen ja sitten toisen mukaan, aseta sarakkeiden nimet listaan haluttuun järjestykseen. Katso esimerkkiä, jossa lajitellaan ensin 'Year'-sarakkeen ja sitten 'Engine_volume'-sarakkeen mukaan. Tämä koodi poimii ensin 5 vanhinta autoa, ja jos vuosiluku on sama, pienemmän 'Engine_volume'-arvon omaava auto asetetaan etusijalle:

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

Vertaa alla olevia kahta esimerkkiä. Nyt kehitämme toimintoa hieman pidemmälle. Palautetaan esimerkit sarakkeen 'Year' arvojen perusteella. Sarakkeessa 'Year' arvot voivat toistua, joten jos haluamme tulostaa kymmenen vanhinta autoa aiemmalla syntaksilla, funktio palauttaa vain kymmenen arvoa. Se ei huomioi, vaikka 11. tai 12. arvo olisi sama kuin 10. Voimme lisätä argumentin keep = 'all' metodiin .nsmallest() estääksemme tällaiset tapaukset. Katso esimerkkiä ja suorita se nähdäksesi ero:

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
Tehtävä

Swipe to start coding

Noudata tässä seuraavaa algoritmia:

  1. Hae autot, joiden sarakkeen 'Year' arvot ovat suurempia kuin 2010.
  2. Poimi 15 edullisinta autoa (sarakkeen 15 'Price' pienintä arvoa). Sisällytä kaikki sarakkeen 'Price' päällekkäiset arvot.
  3. Tulosta kaikki arvot tietojoukosta data_cheapest.

Ratkaisu

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 5
single

single

some-alt