Deret Waktu dalam Pandas
DatetimeIndex, resample(), rolling(), shift(), pembuatan rentang tanggal, dan pengambilan sampel ulang.
Deret Waktu dalam Pandas adalah pelajaran Learn AI with Python gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Learn AI with Python, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Learn AI with Python mencakup 4 pelajaran total.
Waktu dalam pandas
pandas memiliki dukungan datetime kelas utama. Mengonversi string menjadi stempel waktu dan mengindeks berdasarkan waktu memungkinkan pengambilan sampel ulang, jendela bergulir, dan fitur jeda.
Mengurai dengan to_datetime
pd.to_datetime mengonversi string atau angka menjadi objek Timestamp yang tepat, dengan mengenali sebagian besar format umum secara otomatis.
import pandas as pd
d = pd.to_datetime(["2026-01-01", "2026-01-05", "2026-02-10"])
print(d)
print(d.dtype) # datetime64[ns]Membuat Tanggal dengan date_range
pd.date_range membuat urutan stempel waktu dengan jarak yang sama. Kode freq mengatur langkahnya: D untuk hari, H untuk jam, M untuk akhir bulan, dan seterusnya.
rng = pd.date_range("2026-01-01", periods=5, freq="D")
print(rng)
# 2026-01-01 ... 2026-01-05Membuat DatetimeIndex
Menetapkan kolom datetime sebagai indeks akan membuat DatetimeIndex, yang memungkinkan pemotongan yang memahami waktu serta alat resample/rolling.
ts = pd.Series([10, 12, 9, 15, 11],
index=pd.date_range("2026-01-01", periods=5, freq="D"))
print(ts)Pemotongan String Parsial
Dengan DatetimeIndex, Anda dapat memotong berdasarkan tanggal parsial: string tahun atau bulan akan memilih semua baris yang cocok.
monthly = pd.Series(range(60),
index=pd.date_range("2026-01-01", periods=60, freq="D"))
print(monthly["2026-02"].head()) # all of FebruaryDownsampling dengan resample
resample adalah groupby untuk waktu. Lakukan downsampling ke frekuensi yang lebih kasar, lalu agregasikan, misalnya data harian menjadi jumlah mingguan.
weekly = monthly.resample("W").sum()
print(weekly.head())Upsampling dan Pengisian
Resampling ke frekuensi yang LEBIH HALUS akan membuat celah. Gabungkan dengan .ffill() untuk meneruskan nilai terakhir.
hourly = ts.resample("12H").ffill()
print(hourly.head())Jendela Bergulir
rolling(window) menghitung statistik pada jendela yang bergeser, sebagai dasar rata-rata bergerak yang menghaluskan deret yang berisik.
roll = monthly.rolling(window=7).mean()
print(roll.head(10)) # first 6 are NaN (not enough history)Varian Rolling
Pengurangan apa pun dapat diterapkan pada jendela rolling: mean, sum, std, min, max. std rolling 7 hari mengukur volatilitas terkini.
vol = monthly.rolling(7).std()
print(vol.tail())Membuat Jeda dengan shift
shift(n) menggeser nilai ke depan sebanyak n periode, sehingga membuat fitur jeda dan memungkinkan perhitungan perubahan dari satu periode ke periode berikutnya.
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)Mengekstrak Bagian Tanggal
Pengakses .dt menyediakan komponen seperti tahun, bulan, dan hari dalam minggu, yang berguna sebagai fitur model.
s = pd.Series(pd.date_range("2026-01-01", periods=3, freq="D"))
print(s.dt.dayofweek) # 0=Monday
print(s.dt.month)Pemeriksaan Singkat
Uji pengetahuan Anda tentang deret waktu.
Ringkasan
Perangkat deret waktu:
pd.to_datetimeuntuk mengurai,pd.date_rangeuntuk membuatDatetimeIndexmemungkinkan pemotongan string parsialresample(freq).agg()untuk upsampling/downsamplingrolling(window)untuk statistik bergerakshift(n)untuk jeda;.dtuntuk bagian tanggal
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Deret Waktu dalam Pandas” gratis?
Ya — teks lengkap “Deret Waktu dalam Pandas” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Learn AI with Python, upgrade ke CoddyKit PRO. Kursus Learn AI with Python mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Deret Waktu dalam Pandas”?
DatetimeIndex, resample(), rolling(), shift(), pembuatan rentang tanggal, dan pengambilan sampel ulang. Kamu berlatih Learn AI with Python dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Learn AI with Python?
Tidak diperlukan pengalaman sebelumnya. Learn AI with Python di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Deret Waktu dalam Pandas” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Learn AI with Python ini?
Ya. Setiap pelajaran Learn AI with Python menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- GroupBy dan Agregasi
- Tabel Pivot dan Tabulasi Silang
- Penggabungan dan Penyatuan Lanjutan
- Deret Waktu dalam Pandas