Sarakkeen 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:
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. 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:
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
Noudata tässä seuraavaa algoritmia:
- Hae autot, joiden sarakkeen
'Year'arvot ovat suurempia kuin2010. - Poimi
15edullisinta autoa (sarakkeen15'Price'pienintä arvoa). Sisällytä kaikki sarakkeen'Price'päällekkäiset arvot. - 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
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?
Awesome!
Completion rate improved to 3.03
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. 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:
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
Noudata tässä seuraavaa algoritmia:
- Hae autot, joiden sarakkeen
'Year'arvot ovat suurempia kuin2010. - Poimi
15edullisinta autoa (sarakkeen15'Price'pienintä arvoa). Sisällytä kaikki sarakkeen'Price'päällekkäiset arvot. - Tulosta kaikki arvot tietojoukosta
data_cheapest.
Ratkaisu
Kiitos palautteestasi!
single