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 Aggregointi
Datan Käsittely Pandasilla
Osio 4. Luku 2
single

single

bookRyhmittely useiden sarakkeiden mukaan

Pyyhkäise näyttääksesi valikon

Lisätään tietoa .groupby()-metodista. Voit ryhmitellä usean sarakkeen perusteella, mutta järjestyksellä on tällöin suuri merkitys. Edellisessä luvussa ryhmittelimme tietoja lennon numeron perusteella ja laskimme viiveiden määrän. Voimme monimutkaistaa tätä tehtävää ryhmittelemällä paitsi 'Flight'-sarakkeen, myös 'Airline'-sarakkeen mukaan. Kertaa tietoa 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 ne sarakkeet, joiden perusteella ryhmitellään;
  • .groupby(['Flight', 'Airline']) – tässä 'Flight' ja 'Airline' ovat funktion .groupby() argumentteja.

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

Tehtävä

Pyyhkäise aloittaaksesi koodauksen

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

  1. Ryhmittele data:
    • Poimi sarakkeet 'AirportFrom', 'DayOfWeek' ja 'Time' datasta (tässä järjestyksessä);
    • Käytä .groupby()-metodia edellä mainittuihin sarakkeisiin;
    • .groupby()-metodin sisällä määrittele 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

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

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

some-alt