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

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