R Under development (unstable) (2025-10-28 r88973 ucrt) -- "Unsuffered Consequences" Copyright (C) 2025 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > library(testthat) > library(fairmodels) > > > test_check("fairmodels") Welcome to DALEX (version: 2.5.3). Find examples and detailed introduction at: http://ema.drwhy.ai/ Additional features will be available after installation of: ggpubr. Use 'install_dependencies()' to get all suggested dependencies Loaded gbm 2.2.2 This version of gbm is no longer under development. Consider transitioning to gbm3, https://github.com/gbm-developers/gbm3 Preparation of a new explainer is initiated -> model label : ranger (  default  ) -> data : 6172 rows 7 cols -> target variable : 6172 values -> predict function : yhat.ranger will be used (  default  ) -> predicted values : No value for predict function target column. (  default  ) -> model_info : package ranger , ver. 0.17.0 , task classification (  default  ) -> predicted values : numerical, min = 0.1645455 , mean = 0.5451027 , max = 0.865144 -> residual function : difference between y and yhat (  default  ) -> residuals : numerical, min = -0.8509332 , mean = -0.0002226247 , max = 0.7769569  A new explainer has been created!  Preparation of a new explainer is initiated -> model label : lm (  default  ) -> data : 6172 rows 7 cols -> target variable : 6172 values -> predict function : yhat.glm will be used (  default  ) -> predicted values : No value for predict function target column. (  default  ) -> model_info : package stats , ver. 4.6.0 , task classification (  default  ) -> predicted values : numerical, min = 0.004522979 , mean = 0.5448801 , max = 0.8855426 -> residual function : difference between y and yhat (  default  ) -> residuals : numerical, min = -0.8822826 , mean = -5.053611e-13 , max = 0.9767658  A new explainer has been created!  Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 0 objects -> Checking explainers : 2 in total (  compatible  ) -> Metric calculation : 13/13 metrics calculated for all models  Fairness object created succesfully  Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 0 objects -> Checking explainers : 2 in total (  compatible  ) -> Metric calculation : 13/13 metrics calculated for all models Fairness object created succesfully Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( changed from numeric  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 0 objects -> Checking explainers : 2 in total (  compatible  ) -> Metric calculation : 13/13 metrics calculated for all models Fairness object created succesfully Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : Creating fairness classification object -> Privileged subgroup : character ( from first fairness object  ) -> Protected variable : factor ( from first fairness object  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 2 objects (  compatible  ) -> Checking explainers : 4 in total (  compatible  ) Creating fairness classification object -> Privileged subgroup : character ( from first fairness object  ) -> Protected variable : factor ( from first fairness object  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 1 object (  compatible  ) -> Checking explainers : 3 in total (  model type not supported  ) Creating fairness classification object -> Privileged subgroup : character ( from first fairness object  ) -> Protected variable : factor ( from first fairness object  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 2 objects (  not compatible  ) Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( from first fairness object  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 2 objects (  not compatible  ) Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 2 objects (  not compatible  ) Preparation of a new explainer is initiated -> model label : lm (  default  ) -> data : 1000 rows 3 cols -> target variable : 1000 values -> predict function : yhat.lm will be used (  default  ) -> predicted values : No value for predict function target column. (  default  ) -> model_info : package stats , ver. 4.6.0 , task regression (  default  ) -> predicted values : numerical, min = -153.6197 , mean = 743.4221 , max = 1736.137 -> residual function : difference between y and yhat (  default  ) -> residuals : numerical, min = -278.8092 , mean = 5.90041e-13 , max = 315.2319  A new explainer has been created!  Creating fairness regression object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( changed from character  ) -> Fairness objects : 0 objects -> Checking explainers : 1 in total (  compatible  ) -> Metric calculation : 3/3 metrics calculated for all models  Fairness regression object created succesfully  Creating fairness regression object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( changed from character  ) -> Fairness objects : 0 objects -> Checking explainers : 1 in total (  compatible  ) -> Metric calculation : 3/3 metrics calculated for all models Fairness regression object created succesfully Creating fairness regression object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( changed from character  ) -> Fairness objects : 0 objects -> Checking explainers : 1 in total (  compatible  ) -> Metric calculation : 3/3 metrics calculated for all models  Fairness regression object created succesfully  Creating fairness regression object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( changed from character  ) -> Fairness objects : 1 object (  compatible  ) -> Checking explainers : 2 in total (  compatible  ) Creating fairness regression object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( changed from numeric  ) Creating fairness regression object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( changed from character  ) Creating fairness regression object -> Privileged subgroup : character ( from first fairness object  ) -> Protected variable : factor ( from first fairness object  ) Creating fairness regression object -> Privileged subgroup : character ( from first fairness object  ) -> Protected variable : factor ( from first fairness object  ) Creating fairness regression object -> Privileged subgroup : character ( from first fairness object  ) -> Protected variable : factor ( changed from character  ) -> Fairness objects : 1 object (  compatible  ) -> Checking explainers : 2 in total (  model type not supported  ) Preparation of a new explainer is initiated -> model label : lm (  default  ) -> data : 1000 rows 3 cols -> target variable : 1000 values -> predict function : yhat.lm will be used (  default  ) -> predicted values : No value for predict function target column. (  default  ) -> model_info : package stats , ver. 4.6.0 , task regression (  default  ) -> predicted values : numerical, min = -153.6197 , mean = 743.4221 , max = 1736.137 -> residual function : difference between y and yhat (  default  ) -> residuals : numerical, min = -278.8092 , mean = 5.90041e-13 , max = 315.2319  A new explainer has been created!  Creating fairness regression object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( changed from character  ) -> Fairness objects : 0 objects -> Checking explainers : 1 in total (  compatible  ) -> Metric calculation : 3/3 metrics calculated for all models  Fairness regression object created succesfully  Creating fairness regression object -> Privileged subgroup : character ( from first fairness object  ) -> Protected variable : factor ( from first fairness object  ) -> Fairness objects : 1 object (  compatible  ) -> Checking explainers : 2 in total (  compatible  ) -> Metric calculation : 3/3 metrics calculated for all models  Fairness regression object created succesfully  Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 0 objects -> Checking explainers : 1 in total (  compatible  ) -> Metric calculation : 13/13 metrics calculated for all models  Fairness object created succesfully  Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 0 objects -> Checking explainers : 1 in total (  not compatible  ) Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 0 objects -> Checking explainers : 1 in total (  compatible  ) -> Metric calculation : 13/13 metrics calculated for all models  Fairness object created succesfully  Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 1 object (  compatible  ) -> Checking explainers : 2 in total (  compatible  ) Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 0 objects -> Checking explainers : 1 in total (  compatible  ) -> Metric calculation : 13/13 metrics calculated for all models  Fairness object created succesfully  Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 2 objects (  not compatible  ) Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 0 objects -> Checking explainers : 2 in total (  y not equal  ) Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 0 objects -> Checking explainers : 1 in total (  compatible  ) -> Metric calculation : 13/13 metrics calculated for all models  Fairness object created succesfully  Creating fairness classification object -> Privileged subgroup : character ( from first fairness object  ) -> Protected variable : factor ( from first fairness object  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 2 objects (  compatible  ) -> Checking explainers : 2 in total (  compatible  ) -> Metric calculation : 13/13 metrics calculated for all models  Fairness object created succesfully  Performace metric not given, setting deafult ( accuracy ) Performace metric not given, setting deafult ( accuracy ) Performace metric not given, setting deafult ( accuracy ) Fairness Metric not given, setting deafult ( TPR ) Fairness Metric not given, setting deafult ( TPR ) Fairness Metric not given, setting deafult ( TPR ) Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 0 objects -> Checking explainers : 2 in total (  compatible  ) -> Metric calculation : 8/13 metrics calculated for all models ( 5 NA created )  Fairness object created succesfully  Fairness Metric not given, setting deafult ( TPR ) Performace metric not given, setting deafult ( accuracy ) Creating object with: Fairness metric: TPR Performance metric: accuracy Creating object with: Fairness metric: FPR Performance metric: f1 Fairness data top rows for FPR group score model 1 African_American 0.35204756 lm 2 Asian 0.04347826 lm 3 Caucasian 0.16393443 lm 4 Hispanic 0.11562500 lm 5 Native_American 0.16666667 lm 6 Other 0.07762557 lm Performance data for f1 : 1 lm 0.6039853 2 ranger 0.6346962 Fairness Metric is NULL, setting deafult parity loss metric ( TPR ) Performace metric is NULL, setting deafult ( accuracy ) Creating object with: Fairness metric: TPR Performance metric: accuracy Performace metric is NULL, setting deafult ( accuracy ) Creating object with: Fairness metric: non_existing Performance metric: accuracy Fairness Metric is NULL, setting deafult parity loss metric ( TPR ) Creating object with: Fairness metric: TPR Performance metric: non_existing Fairness Metric is NULL, setting deafult parity loss metric ( TPR ) Creating object with: Fairness metric: TPR Performance metric: auc Fairness Metric is NULL, setting deafult parity loss metric ( TPR ) Creating object with: Fairness metric: TPR Performance metric: accuracy Fairness Metric is NULL, setting deafult parity loss metric ( TPR ) Creating object with: Fairness metric: TPR Performance metric: precision Fairness Metric is NULL, setting deafult parity loss metric ( TPR ) Creating object with: Fairness metric: TPR Performance metric: recall Preparation of a new explainer is initiated -> model label : lm (  default  ) -> data : 6172 rows 7 cols -> target variable : 6172 values -> predict function : yhat.glm will be used (  default  ) -> predicted values : No value for predict function target column. (  default  ) -> model_info : package stats , ver. 4.6.0 , task classification (  default  ) -> predicted values : numerical, min = 0.1144574 , mean = 0.4551199 , max = 0.995477 -> residual function : difference between y and yhat (  default  ) -> residuals : numerical, min = -0.9767658 , mean = 5.053909e-13 , max = 0.8822826  A new explainer has been created!  Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 0 objects -> Checking explainers : 1 in total (  compatible  ) -> Metric calculation : 8/13 metrics calculated for all models ( 5 NA created )  Fairness object created succesfully  Preparation of a new explainer is initiated -> model label : lm (  default  ) -> data : 1000 rows 3 cols -> target variable : 1000 values -> predict function : yhat.lm will be used (  default  ) -> predicted values : No value for predict function target column. (  default  ) -> model_info : package stats , ver. 4.6.0 , task regression (  default  ) -> predicted values : numerical, min = -119.546 , mean = 756.4906 , max = 1594.562 -> residual function : difference between y and yhat (  default  ) -> residuals : numerical, min = -302.6659 , mean = 3.478115e-13 , max = 332.7938  A new explainer has been created!  Creating fairness regression object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( changed from character  ) -> Fairness objects : 0 objects -> Checking explainers : 1 in total (  compatible  ) -> Metric calculation : 3/3 metrics calculated for all models  Fairness regression object created succesfully  Preparation of a new explainer is initiated -> model label : ranger (  default  ) -> data : 1000 rows 3 cols -> target variable : 1000 values -> predict function : yhat.ranger will be used (  default  ) -> predicted values : No value for predict function target column. (  default  ) -> model_info : package ranger , ver. 0.17.0 , task regression (  default  ) -> predicted values : numerical, min = 361.6527 , mean = 756.1869 , max = 1136.792 -> residual function : difference between y and yhat (  default  ) -> residuals : numerical, min = -669.0748 , mean = 0.3037205 , max = 630.6428  A new explainer has been created!  Creating fairness regression object -> Privileged subgroup : character ( from first fairness object  ) -> Protected variable : factor ( from first fairness object  ) -> Fairness objects : 1 object (  compatible  ) -> Checking explainers : 2 in total (  compatible  ) -> Metric calculation : 3/3 metrics calculated for all models  Fairness regression object created succesfully  Creating fairness classification object -> Privileged subgroup : character ( Ok  ) -> Protected variable : factor ( Ok  ) -> Cutoff values for explainers : 0.5 ( for all subgroups ) -> Fairness objects : 0 objects -> Checking explainers : 1 in total (  compatible  ) -> Metric calculation : 13/13 metrics calculated for all models  Fairness object created succesfully  Fairness Metric not given, setting deafult ( TPR ) Performace metric not given, setting deafult ( accuracy ) Creating object with: Fairness metric: TPR Performance metric: accuracy Fairness Metric is NULL, setting deafult parity loss metric ( TPR ) Performace metric is NULL, setting deafult ( accuracy ) Creating object with: Fairness metric: TPR Performance metric: accuracy changing protected to factor Preparation of a new explainer is initiated -> model label : lm (  default  ) -> data : 15 rows 2 cols -> target variable : 15 values -> predict function : yhat.glm will be used (  default  ) -> predicted values : No value for predict function target column. (  default  ) -> model_info : package stats , ver. 4.6.0 , task classification (  default  ) -> predicted values : numerical, min = 7.884924e-12 , mean = 0.4666667 , max = 1 -> residual function : difference between y and yhat (  default  ) -> residuals : numerical, min = -7.884924e-12 , mean = -5.256659e-13 , max = 7.884915e-12  A new explainer has been created!  [ FAIL 0 | WARN 1 | SKIP 0 | PASS 313 ] [ FAIL 0 | WARN 1 | SKIP 0 | PASS 313 ] > > proc.time() user system elapsed 28.96 1.53 28.60