clc;
clear;
mean = mean(data_train)
mean = 6.0350
variansi = var(data_train)
variansi = 306.2287
1
% Plot rolling mean
figure;
movmean_data_train = movmean(data_train, 10); % Misalnya, moving average dengan jendela 10
plot(movmean_data_train);
2
% title('Moving Average (Data Train)');
if h == 1
disp('Data train tidak stasioner dalam rata-rata');
else
disp('Data train stasioner dalam rata-rata');
end
if h == 1
disp('Data train tidak stasioner dalam variansi');
else
disp('Data train stasioner dalam variansi');
3
end
% Membuat QQ plot
qqplot(data_train);
title('QQ Plot dari Data Train');
% Membuat boxplot
figure;
boxplot(data_train);
title('Boxplot dari Data Train');
xlabel('Wilayah');
ylabel('Data');
4
% % Menerapkan transformasi Box-Cox pada data
% [transformed_data, lambda] = boxcox(data_train);
%
% % Menampilkan data yang telah diubah dan nilai lambda
% disp('Data yang telah diubah:');
% disp(transformed_data);
% disp(['Nilai Lambda: ', num2str(lambda)]);
acf_table = zeros(21, jumlah_wilayah); % Misalnya, rentang lag dari -10 hingga +10
pacf_table = zeros(21, jumlah_wilayah);
for i = 1:jumlah_wilayah
timeseries_data = data_train(:, i);
figure;
autocorr(timeseries_data, 20); % Misalnya, rentang lag dari 0 hingga 20
% title(['ACF untuk Wilayah ', num2str(i)]);
title('ACF dari Data Train');
xlabel('Lag');
ylabel('ACF');
figure;
parcorr(timeseries_data, 20); % Misalnya, rentang lag dari 0 hingga 20
% title(['PACF untuk Wilayah ', num2str(i)]);
title('PACF dari Data Train');
xlabel('Lag');
5
ylabel('PACF');
end
6
model_arima = cell(1, jumlah_wilayah);
for i = 1:jumlah_wilayah
timeseries_data = data_train(:, i);
p = 1;
d = 1;
q = 1;
model_arima{i} = arima(p, d, q);
model_arima{i} = estimate(model_arima{i}, timeseries_data);
end
future_steps = 87;
forecast_results = zeros(future_steps, jumlah_wilayah);
for i = 1:jumlah_wilayah
[forecast_i, ~] = forecast(model_arima{i}, future_steps);
forecast_results(:, i) = forecast_i;
end
disp(forecast_results);
0.0032
0.0075
0.0120
0.0167
0.0214
0.0261
0.0308
0.0355
0.0402
0.0449
0.0496
0.0543
0.0590
0.0637
0.0684
0.0731
0.0778
0.0825
0.0872
0.0919
0.0966
0.1013
0.1060
0.1107
7
0.1154
0.1201
0.1248
0.1295
0.1342
0.1389
0.1436
0.1483
0.1530
0.1577
0.1624
0.1671
0.1718
0.1765
0.1812
0.1859
0.1906
0.1953
0.2000
0.2047
0.2094
0.2141
0.2188
0.2235
0.2282
0.2329
0.2376
0.2423
0.2470
0.2517
0.2564
0.2611
0.2658
0.2705
0.2752
0.2799
0.2846
0.2893
0.2940
0.2987
0.3034
0.3081
0.3128
0.3175
0.3222
0.3269
0.3316
0.3363
0.3410
0.3457
0.3504
0.3551
0.3598
0.3645
0.3692
0.3739
0.3786
0.3833
0.3880
0.3927
0.3974
0.4021
0.4068
8
% Plot data uji
figure;
plot(data_test, '-o', 'LineWidth', 1.5); % Data uji sebagai data aktual
hold on;