On Fri, Jul 25, 2025 at 9:53 AM Sven Schreiber
<sven.schreiber(a)fu-berlin.de> wrote:
I'm looking at some related code in git, leading to some questions
(although not directly related to the reported failure yet).
In lib/src/compare.c there's auto_drop_var around line 1511. In that
function, it seems that a first loop picks the candidate variable to be
dropped, and always by looking at the minimal t-stat. (if (tstat < tmin)
and so on.) Only _afterwards_ does the choice of using an info criterion
come into play. (Below, where: "... else { /* using an info criterion */
...")
I can understand why one wants to focus on a candidate variable in each
round, but doesn't that contradict the documentation of omit --auto:
'The “best” candidate at each step is then that whose omission gives the
greatest improvement (reduction) in the selected criterion.' ??
BIC = -2 * loglik + k * log(n)
The sample size, n, is a constant in context, and dropping any
regressor will reduce k by 1. All that matters for the comparison of
candidates is the least squares loglikelihood, and the SSR is only
variable in that calculation. Omitting the regressor with the smallest
absolute t-ratio will produce the smallest possible increase in the
SSR, and hence the best post-omission BIC.
Allin