Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Ryhmittely Useiden Sarakkeiden Mukaan | Datan Yhdistäminen
Edistyneet Tekniikat Pandas-Kirjastossa

bookRyhmittely Useiden Sarakkeiden Mukaan

Lisätään tietoa .groupby()-metodista. Voit ryhmitellä useiden sarakkeiden perusteella, mutta järjestyksellä on tällöin ratkaiseva merkitys. Edellisessä luvussa ryhmiteltiin data lennon numeron mukaan ja laskettiin viiveiden määrä. Voimme monimutkaistaa tätä tehtävää ryhmittelemällä paitsi 'Flight'-sarakkeen, myös 'Airline'-sarakkeen mukaan. Kertaa tietoja aineistosta ja tarkastele sitten tätä yksinkertaista esimerkkiä (tuloste sisältää vain ensimmäiset 10 riviä):

1234
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/plane', index_col = 0) data_flights = data[['Flight', 'Delay', 'Airline']].groupby(['Flight', 'Airline']).count() print(data_flights.head(10))
copy

Selitys:

data[['Flight', 'Delay', 'Airline']].groupby(['Flight', 'Airline']).count()
  • data[['Flight', 'Delay', 'Airline']] – sarakkeet, joiden kanssa työskennellään, mukaan lukien sarakkeet, joiden perusteella ryhmitellään;
  • .groupby(['Flight', 'Airline']) – tässä 'Flight' ja 'Airline' ovat funktion .groupby() argumentteja.

Huomioi, että jos haluat ryhmitellä useiden sarakkeiden perusteella, laita ne listaan – järjestyksellä on ratkaiseva merkitys. Tässä tapauksessa, jos aineiston rivillä on sama arvo 'Flight'-sarakkeessa, ne kuuluvat samaan ryhmään. Näiden ryhmien sisällä funktio etsii muita ryhmiä rivien perusteella, joilla on sama arvo 'Airline'-sarakkeessa. Tämän jälkeen .count()-metodi laskee rivien määrän 'Delay'-sarakkeessa, joilla on sama arvo 'Airline'-sarakkeessa kullekin 'Flight'-ryhmälle.

Tehtävä

Swipe to start coding

Tehtävänäsi on ryhmitellä data lähtölentokentän ja viikonpäivän mukaan. Laske ryhmien keskimääräinen aika. Noudata seuraavaa algoritmia tehtävän suorittamiseksi:

  1. Ryhmittele data:
    • Poimi sarakkeet 'AirportFrom', 'DayOfWeek' ja 'Time' data-objektista (tässä järjestyksessä);
    • Käytä .groupby()-metodia näihin sarakkeisiin;
    • Aseta .groupby()-metodin sisään sarakkeet 'AirportFrom' ja 'DayOfWeek'; järjestyksellä on merkitystä;
    • Laske sarakkeen 'Time' keskiarvo.
  2. Tulosta ensimmäiset 10 riviä data_flights-aineistosta.

Ratkaisu

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 4. Luku 2
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 why the order of columns in `.groupby()` matters?

What does the `.count()` method do in this context?

Can you show how the output would change if we switched the order of the columns in `.groupby()`?

close

Awesome!

Completion rate improved to 3.03

bookRyhmittely Useiden Sarakkeiden Mukaan

Pyyhkäise näyttääksesi valikon

Lisätään tietoa .groupby()-metodista. Voit ryhmitellä useiden sarakkeiden perusteella, mutta järjestyksellä on tällöin ratkaiseva merkitys. Edellisessä luvussa ryhmiteltiin data lennon numeron mukaan ja laskettiin viiveiden määrä. Voimme monimutkaistaa tätä tehtävää ryhmittelemällä paitsi 'Flight'-sarakkeen, myös 'Airline'-sarakkeen mukaan. Kertaa tietoja aineistosta ja tarkastele sitten tätä yksinkertaista esimerkkiä (tuloste sisältää vain ensimmäiset 10 riviä):

1234
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/plane', index_col = 0) data_flights = data[['Flight', 'Delay', 'Airline']].groupby(['Flight', 'Airline']).count() print(data_flights.head(10))
copy

Selitys:

data[['Flight', 'Delay', 'Airline']].groupby(['Flight', 'Airline']).count()
  • data[['Flight', 'Delay', 'Airline']] – sarakkeet, joiden kanssa työskennellään, mukaan lukien sarakkeet, joiden perusteella ryhmitellään;
  • .groupby(['Flight', 'Airline']) – tässä 'Flight' ja 'Airline' ovat funktion .groupby() argumentteja.

Huomioi, että jos haluat ryhmitellä useiden sarakkeiden perusteella, laita ne listaan – järjestyksellä on ratkaiseva merkitys. Tässä tapauksessa, jos aineiston rivillä on sama arvo 'Flight'-sarakkeessa, ne kuuluvat samaan ryhmään. Näiden ryhmien sisällä funktio etsii muita ryhmiä rivien perusteella, joilla on sama arvo 'Airline'-sarakkeessa. Tämän jälkeen .count()-metodi laskee rivien määrän 'Delay'-sarakkeessa, joilla on sama arvo 'Airline'-sarakkeessa kullekin 'Flight'-ryhmälle.

Tehtävä

Swipe to start coding

Tehtävänäsi on ryhmitellä data lähtölentokentän ja viikonpäivän mukaan. Laske ryhmien keskimääräinen aika. Noudata seuraavaa algoritmia tehtävän suorittamiseksi:

  1. Ryhmittele data:
    • Poimi sarakkeet 'AirportFrom', 'DayOfWeek' ja 'Time' data-objektista (tässä järjestyksessä);
    • Käytä .groupby()-metodia näihin sarakkeisiin;
    • Aseta .groupby()-metodin sisään sarakkeet 'AirportFrom' ja 'DayOfWeek'; järjestyksellä on merkitystä;
    • Laske sarakkeen 'Time' keskiarvo.
  2. Tulosta ensimmäiset 10 riviä data_flights-aineistosta.

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 4. Luku 2
single

single

some-alt