@@ -30,6 +30,7 @@ function fit!(
30
30
filter:: KalmanFilter = default_filter (model),
31
31
optimizer:: Optimizer = default_optimizer (model),
32
32
)
33
+ isfitted (model) && return model
33
34
@assert has_fit_methods (typeof (model))
34
35
initial_unconstrained_hyperparameter = handle_optim_initial_hyperparameters (model)
35
36
# TODO Should there be a try catch?
@@ -144,26 +145,30 @@ function fill_results!(model::StateSpaceModel, llk::Fl, std_err::Vector{Fl}) whe
144
145
model. results. model_name = model_name (model)
145
146
model. results. coef_table = coef_table
146
147
model. results. llk = llk
147
- model. results. aic = AIC (num_hyperparameters, llk)
148
- model. results. aicc = AICc (n_obs, num_hyperparameters, llk)
149
- model. results. bic = BIC (n_obs, num_hyperparameters, llk)
148
+ model. results. aic = aic (num_hyperparameters, llk)
149
+ model. results. aicc = aicc (n_obs, num_hyperparameters, llk)
150
+ model. results. bic = bic (n_obs, num_hyperparameters, llk)
150
151
model. results. num_observations = n_obs
151
152
model. results. num_hyperparameters = num_hyperparameters
152
153
return model
153
154
end
154
155
155
- function AIC (k:: Int , llk:: Fl ) where Fl
156
+ function aic (k:: Int , llk:: Fl ) where Fl
156
157
return convert (Fl, 2 * k - 2 * llk)
157
158
end
158
159
159
- function AICc (n:: Int , k:: Int , llk:: Fl ) where Fl
160
- return convert (Fl, AIC (k, llk) + (2 * k * (k + 1 ) / (n - k - 1 )))
160
+ function aicc (n:: Int , k:: Int , llk:: Fl ) where Fl
161
+ return convert (Fl, aic (k, llk) + (2 * k * (k + 1 ) / (n - k - 1 )))
161
162
end
162
163
163
- function BIC (n:: Int , k:: Int , llk:: Fl ) where Fl
164
+ function bic (n:: Int , k:: Int , llk:: Fl ) where Fl
164
165
return convert (Fl, log (n) * k - 2 * llk)
165
166
end
166
167
168
+ aic (model:: StateSpaceModel ) = model. results. aic
169
+ aicc (model:: StateSpaceModel ) = model. results. aicc
170
+ bic (model:: StateSpaceModel ) = model. results. bic
171
+
167
172
function build_coef_table (model:: StateSpaceModel , std_err:: Vector{Fl} ) where Fl
168
173
all_coef = get_constrained_values (model)
169
174
all_std_err = handle_std_err (model, std_err)
0 commit comments