## 2 Materials and Methods  
### The Proposed Variable Ranking Algorithm  
Let us define as xi, i = 1,..., Nfeat the set of Nfeat candidate variables, y the outcome of the predictive model and Xtrain the set of training data of cardinality ntrain. The proposed algorithm works in four steps:  
1. Identify the groups of highly correlated numerical features. This can be achieved by computing the correlation coefficient (e.g., Spearman) between each pair of numerical features and then grouping the features with pairwise correlation higher than a threshold th (e.g., th = 0.70). Let us define as Cj, j = 1,..., Ncorr the resulting groups of highly correlated features. Then, we will call Nuncorr the total number of uncorrelated features, i.e., all the features not included in any group Cj.
2. Resampling the training set Xtrain to generate B different versions of the training data. This can be achieved, for example, by bootstrap resampling, i.e., randomly sampling with replacement ntrain elements from the training set, or by subset selection, i.e., by randomly sampling without replacement a fraction of elements of the training set (e.g., 80%).
3. Perform RFE on each of the B training set variants. In this step, each group of correlated features is considered as a single variable; any time a variable from the group C\({}_{\rm j}\) is removed from the model, all the other variables in the same group C\({}_{\rm j}\) are also removed from the model and given the same rank. The obtained ranking has a number of positions equal to the number of uncorrelated features, N\({}_{\rm uncorr}\), plus the number of groups of highly correlated features, N\({}_{\rm corr}\). Indeed, the highly correlated features in group C\({}_{\rm j}\) count in the ranking as a single variable. The ranks are assigned as follows: the variable (or group of variables) that is (are) removed first is assigned a rank equal to N\({}_{\rm uncorr}\) + N\({}_{\rm corr}\); the variable (or group of variables) that is (are) removed at the second RFE's step is assigned a rank equal to N\({}_{\rm uncorr}\) + N\({}_{\rm corr}\) \(-\) 1; and so on, until the last variable (or group of variables) remaining in the model is assigned rank 1. The ordered feature list obtained from each of the B training set variants is called L\({}_{\rm b}\), b = 1,..., B.
4. Aggregate the B ordered variable lists, L\({}_{\rm b}\), b = 1,..., B, by the Borda method. This can be achieved by: (i) computing for each variable (or group of variables) the average rank across the B lists; and (ii) defining a new global rank by ordering the variables (or group of variables) according to the average rank. In this final global ranking, the most important feature (or group of features) will have the lowest rank, while the less important feature (or group of features) will have the highest rank.  
Note that if no group of highly correlated features is identified (N\({}_{\rm corr}\) = 0), the proposed algorithm becomes identical to the standard RFE-Borda count method. Like the standard RFE-Borda count method, the proposed algorithm is general and it can be applied to perform variable ranking with any statistical learning or ML base model. The parameters of the proposed ranking algorithm are the type of correlation to be considered (e.g., Pearson or Spearman), the threshold th to identify the highly correlated features, the number B of training set variants, and the method used to create these variants (e.g., subset selection or bootstrap sampling).