Data Science Academy · Oppitunti

Jäsennä merkkijonot datetime-arvoiksi

to_datetime ja muotojen käsittely

Oppitunti 1/413 vaihetta

Jäsennä merkkijonot datetime-arvoiksi on ilmainen Data Science Academy-oppitunti CoddyKitissä. Tämä on oppitunti 1/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Data Science Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Data Science Academy-kurssilla on yhteensä 4 oppituntia.

Päivämäärät piiloutuvat tekstiksi

Kun lataatte CSV-tiedoston, päivämäärät saapuvat yleensä tavallisina merkkijonoina. Ne näyttävät oikeilta, mutta pandas käsittelee niitä tekstinä, joten päivämäärälaskut eivät vielä toimi. 📅

to_datetime käyttöön

Ratkaisu on yksi funktio: pd.to_datetime. Se käy tekstin läpi ja muuttaa jokaisen arvon oikeaksi aikaleimaksi, jota pandas voi käsitellä laskennassa.

import pandas as pd
ts = pd.to_datetime("2024-03-15")
print(ts)

Muunna kokonainen sarake

Kun välitätte Series-olion funktiolle, saatte takaisin aikaleimoja sisältävän sarakkeen. Tätä tehdään yleensä heti taulukon lataamisen jälkeen, jos siinä on päivämääräkenttä.

df["date"] = pd.to_datetime(df["date"])

Tarkista dtype

Muuntamisen jälkeen sarakkeen dtype on datetime64. Tämä yksittäinen tarkistus kertoo, onnistuiko jäsentäminen ja ovatko päivämäärälaskut nyt käytettävissä.

print(df["date"].dtype)  # datetime64[ns]

Monia muotoja yhdellä kutsulla

to_datetime on älykäs: se lukee automaattisesti ISO-päivämäärät, kauttaviivoilla kirjoitetut päivämäärät ja jopa kirjoitetut kuukaudet. Siisteille ISO-merkkijonoille ei yleensä tarvitse antaa lisätietoja.

pd.to_datetime(["2024-01-01", "Jan 2, 2024"])

Määritä muoto tarkasti

Kun päivämäärät ovat tulkinnanvaraisia, antakaa eksplisiittinen format-merkkijono. Se poistaa arvailun ja nopeuttaa käsittelyä suurissa sarakkeissa.

pd.to_datetime("15/03/2024", format="%d/%m/%Y")

Päivä ensin -päivämäärät

Onko 03/04 maaliskuu vai huhtikuu? Asettakaa dayfirst=True, jotta pandas lukee päivän ennen kuukautta eurooppalaisten päivämäärämuotojen mukaisesti.

pd.to_datetime("03/04/2024", dayfirst=True)

Virheelliset arvot ilman kaatumista

Yksi epäsiisti solu voi rikkoa koko jäsentämisen. Käyttäkää errors="coerce"-asetusta, jotta jäsentämiskelvottomat arvot muuttuvat NaT-arvoiksi virheen nostamisen sijaan.

pd.to_datetime("not-a-date", errors="coerce")  # NaT

Tutustutaan NaT-arvoon

NaT on datetime-tyyppien versio NaN-arvosta eli puuttuva aikaleima. Voitte löytää epäonnistuneet jäsennykset isna-toiminnolla ja päättää, miten käsittelette ne.

df["date"].isna().sum()  # count failed parses

Yhdistä päivämäärä ja kellonaika

Onko teillä erilliset päivämäärä- ja tuntisarakkeet? Yhdistäkää ne yhdeksi merkkijonoksi ja jäsentäkää se sitten kerralla. Lopputuloksena on yksi siisti aikaleima.

pd.to_datetime(df["day"] + " " + df["time"])

Jäsennä latauksen yhteydessä

Voitte ohittaa yhden vaiheen jäsentämällä päivämäärät tuonnin aikana. Välittäkää parse_dates read_csv-funktiolle, niin sarake saapuu jo datetime-muodossa.

pd.read_csv("sales.csv", parse_dates=["date"])

Pikatarkistus

Päivämääräsarakkeessanne on muutama virheellinen arvo, jotka haluatte säilyttää puuttuvina.

Kertaus: osaatte jäsentää päivämäärät

Muutittekste tekstin oikeiksi aikaleimoiksi pd.to_datetime-toiminnolla, hallitsitte muotoja, käsittelitte virheelliset arvot coerce-asetuksella ja jäsensitte päivämäärät jo latauksen yhteydessä. Päivämäärälaskut ovat nyt ulottuvillanne. 🎉

Aloita maksutta

Opi Python tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
30
Oppitunnit
120

Usein kysytyt kysymykset

Onko oppitunti ”Jäsennä merkkijonot datetime-arvoiksi” ilmainen?

Kyllä – oppitunnin ”Jäsennä merkkijonot datetime-arvoiksi” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Data Science Academy-kurssin, päivitä CoddyKit PROhon. Data Science Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Jäsennä merkkijonot datetime-arvoiksi”?

to_datetime ja muotojen käsittely Harjoittelet Data Science Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Data Science Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Data Science Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/4.

Kuinka kauan ”Jäsennä merkkijonot datetime-arvoiksi”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Data Science Academy-oppitunnilla?

Kyllä. Jokainen Data Science Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Jäsennä merkkijonot datetime-arvoiksi
  2. Poimi vuosi, kuukausi ja viikonpäivä
  3. Muodosta päivä- tai kuukausitason otos
  4. Aikavyöhykkeet ja päivämääräalueet
← Takaisin: Data Science Academy