Lär Er AI med Python · Lektion

Tidsserier i Pandas

DatetimeIndex, resample(), rolling(), shift(), skapande av datumintervall och omsampling.

Lektion 4 av 413 steg

Tidsserier i Pandas är en gratis lektion i Lär Er AI med Python på CoddyKit. Detta är lektion 4 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för Lär Er AI med Python, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Lär Er AI med Python innehåller totalt 4 lektioner.

Tid i pandas

pandas har förstklassigt stöd för datetime. Genom att konvertera strängar till tidsstämplar och indexera efter tid får ni tillgång till omsampling, rullande fönster och laggfunktioner.

Tolka med to_datetime

pd.to_datetime konverterar strängar eller tal till korrekta Timestamp-objekt och identifierar automatiskt de flesta vanliga format.

import pandas as pd
d = pd.to_datetime(["2026-01-01", "2026-01-05", "2026-02-10"])
print(d)
print(d.dtype)   # datetime64[ns]

Generera datum med date_range

pd.date_range skapar en jämnt fördelad sekvens av tidsstämplar. Koden freq styr steget: D för dagar, H för timmar, M för månadsslut och så vidare.

rng = pd.date_range("2026-01-01", periods=5, freq="D")
print(rng)
# 2026-01-01 ... 2026-01-05

Skapa ett DatetimeIndex

Om ni anger en datetime-kolumn som index skapas ett DatetimeIndex, vilket möjliggör tidsmedveten urvalsfiltrering och verktygen resample/rolling.

ts = pd.Series([10, 12, 9, 15, 11],
               index=pd.date_range("2026-01-01", periods=5, freq="D"))
print(ts)

Urval med delvisa strängar

Med ett DatetimeIndex kan ni välja rader med delvisa datum: en års- eller månadssträng väljer alla matchande rader.

monthly = pd.Series(range(60),
    index=pd.date_range("2026-01-01", periods=60, freq="D"))
print(monthly["2026-02"].head())   # all of February

Nedåtgående omsampling med resample

resample är groupby för tid. Sampla om till en grövre frekvens och aggregera sedan, till exempel dagliga data till veckosummor.

weekly = monthly.resample("W").sum()
print(weekly.head())

Uppåtgående omsampling och ifyllnad

Omsampling till en FINARE frekvens skapar luckor. Kombinera med .ffill() för att föra det senaste värdet framåt.

hourly = ts.resample("12H").ffill()
print(hourly.head())

Rullande fönster

rolling(window) beräknar ett statistiskt mått över ett glidande fönster och utgör grunden för glidande medelvärden som jämnar ut brusiga serier.

roll = monthly.rolling(window=7).mean()
print(roll.head(10))   # first 6 are NaN (not enough history)

Varianter av rullande beräkningar

Alla reduktionsfunktioner fungerar på ett rullande fönster: mean, sum, std, min och max. En rullande std över 7 dagar mäter den senaste volatiliteten.

vol = monthly.rolling(7).std()
print(vol.tail())

Skapa laggar med shift

shift(n) flyttar värden framåt med n perioder, vilket skapar laggfunktioner och möjliggör förändringar mellan perioder.

df = pd.DataFrame({"sales": [100, 110, 105, 130]})
df["prev"] = df["sales"].shift(1)
df["pct_change"] = (df["sales"] - df["prev"]) / df["prev"]
print(df)

Extrahera datumdelar

Attributet .dt exponerar delar som year, month och dayofweek, vilka kan användas som modellvariabler.

s = pd.Series(pd.date_range("2026-01-01", periods=3, freq="D"))
print(s.dt.dayofweek)   # 0=Monday
print(s.dt.month)

Snabbkontroll

Testa era kunskaper om tidsserier.

Sammanfattning

Verktygslåda för tidsserier:

  • pd.to_datetime för tolkning och pd.date_range för generering
  • Ett DatetimeIndex möjliggör urval med delvisa strängar
  • resample(freq).agg() för uppåtgående och nedåtgående omsampling
  • rolling(window) för rullande statistik
  • shift(n) för laggar och .dt för datumdelar
Gratis att börja

Lär dig Python med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
53
Lektioner
225

Vanliga frågor

Är lektionen ”Tidsserier i Pandas” gratis?

Ja – du kan läsa vilka 3 lektioner som helst i lärvägen Lär Er AI med Python, inklusive ”Tidsserier i Pandas”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i Lär Er AI med Python innehåller totalt 4 lektioner.

Vad lär jag mig i ”Tidsserier i Pandas”?

DatetimeIndex, resample(), rolling(), shift(), skapande av datumintervall och omsampling. Ni övar på Lär Er AI med Python med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Lär Er AI med Python?

Du behöver inga förkunskaper. Utbildningen i Lär Er AI med Python på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 4 av 4.

Hur lång tid tar lektionen ”Tidsserier i Pandas”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Lär Er AI med Python-lektionen?

Ja. Varje Lär Er AI med Python-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. GroupBy och aggregering
  2. Pivottabeller och korstabellulering
  3. Avancerad sammanfogning och join
  4. Tidsserier i Pandas
← Tillbaka till Lär Er AI med Python