single
Sarakkeen 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:
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))
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:
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())
Vertaa alla olevia kahta esimerkkiä. Nyt kehitämme toimintoa hieman pidemmälle. Palautetaan esimerkit sarakkeen 'Year' arvojen perusteella. Sarakkeessamme 'Year' arvot voivat toistua, joten jos haluamme tulostaa kymmenen vanhinta autoa aiemmalla syntaksilla, funktio palauttaa vain kymmenen arvoa. Se ei huomioi, jos 11. tai 12. arvo on sama kuin 10. Voimme lisätä argumentin keep = 'all' .nsmallest()-metodiin estääksemme tällaiset tapaukset. Katso esimerkkiä ja kokeile suorittaa se nähdäksesi ero:
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)
Pyyhkäise aloittaaksesi koodauksen
Noudata tässä seuraavaa algoritmia:
- Hae autot, joiden sarakkeen
'Year'arvot ovat suurempia kuin2010. - Poimi halvimmat
15autoa (15pienintä arvoa sarakkeesta'Price'). Sisällytä kaikki sarakkeen'Price'duplikaattiarvot. - Tulosta kaikki arvot tietojoukosta
data_cheapest.
Ratkaisu
Kiitos palautteestasi!
single
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme