Tugas Programming
293 words·6 mins·
loading
·
loading
·
Table of Contents
Pandas - Proses Data Time Series - This article is part of a series.
1. Manipulasi Tanggal #
Buatlah sebuah fungsi untuk mengonversi kolom tanggal dalam format string menjadi tipe data datetime pada DataFrame Pandas.
Contoh:
# Input
data = {'Tanggal': ['2022-01-01', '2022-02-15', '2022-03-31']}
df = pd.DataFrame(data)
# Output
convert_to_datetime(df)
# DataFrame hasil
Tanggal
0 2022-01-01
1 2022-02-15
2 2022-03-31
Mudah
2.Rolling Average #
Buatlah fungsi untuk menghitung rata-rata bergerak (rolling average) dari suatu kolom dalam DataFrame Pandas.
Contoh:
# Input
data = {'Value': [10, 15, 20, 25, 30]}
df = pd.DataFrame(data)
# Output
calculate_rolling_average(df, window=2)
# DataFrame hasil
Value Rolling_Avg
0 10 NaN
1 15 12.5
2 20 17.5
3 25 22.5
4 30 27.5
Mudah
3. Identifikasi Seasonality #
Implementasikan fungsi untuk mendekomposisi seasonality pada data time series menggunakan metode yang telah dipelajari. Tampilkan grafiknya.
Contoh:
# Input
data = {'Tanggal': pd.date_range(start='2022-01-01', periods=12, freq='M'),
'Jumlah': [20, 25, 30, 40, 35, 45, 50, 55, 60, 70, 65, 75]}
df = pd.DataFrame(data)
df.set_index('Tanggal', inplace=True)
# Output
decompose_seasonality(df)
4. Resampling Data #
Implementasikan fungsi untuk meresample data time series ke frekuensi yang berbeda.
Contoh:
# Input
data = {'Tanggal': pd.date_range(start='2022-01-01', periods=5, freq='D'),
'Jumlah': [10, 15, 20, 25, 30]}
df = pd.DataFrame(data)
df.set_index('Tanggal', inplace=True)
# Output
resample_data(df, target_freq='W')
5. Analisis Trend #
Buatlah sebuah fungsi yang dapat mengidentifikasi trend dalam data time series menggunakan metode regresi linier.
Contoh:
# Input
data = {'Tanggal': pd.date_range(start='2022-01-01', periods=10, freq='D'),
'Jumlah': [15, 18, 22, 30, 28, 35, 40, 38, 42, 45]}
df = pd.DataFrame(data)
df.set_index('Tanggal', inplace=True)
# Output
identify_trend(df)
6. Analisis Seasonality dan Residual #
Implementasikan fungsi untuk menganalisis musiman (seasonality) dan residual dari hasil dekomposisi data time series.
Contoh:
# Input
data = {'Tanggal': pd.date_range(start='2022-01-01', periods=12, freq='M'),
'Jumlah': [20, 25, 30, 40, 35, 45, 50, 55, 60, 70, 65, 75]}
df = pd.DataFrame(data)
df.set_index('Tanggal', inplace=True)
# Output
analyze_seasonality_residual(df)