Skip to content

Commit bff06b6

Browse files
committed
change examples for CRAN
1 parent 084d8fe commit bff06b6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+713
-239
lines changed

DESCRIPTION

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
Package: fairmodels
22
Type: Package
33
Title: Flexible Tool for Bias Detection, Visualization, and Mitigation
4-
Version: 1.0.0
4+
Version: 1.0.1
55
Authors@R:
66
c(person("Jakub", "Wiśniewski", role = c("aut", "cre"),
77
email = "[email protected]"),

NEWS.md

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# fairmodels 1.0.1
2+
* Changed examples - added parameter `num.threads = 1` to `ranger` and added *donttest{}* to examples with long computation time.
3+
14
# fairmodels 1.0.0
25
* Added citation information
36
* Added additional reference in `fairness_check()` documentation.

R/all_cutoffs.R

+17-7
Original file line numberDiff line numberDiff line change
@@ -19,22 +19,32 @@
1919
#' data = german,
2020
#' family=binomial(link="logit"))
2121
#'
22+
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
23+
#'
24+
#' fobject <- fairness_check(explainer_lm,
25+
#' protected = german$Sex,
26+
#' privileged = "male")
27+
#'
28+
#' ac <- all_cutoffs(fobject)
29+
#' plot(ac)
30+
#'
31+
#' \donttest{
2232
#' rf_model <- ranger::ranger(Risk ~.,
2333
#' data = german,
2434
#' probability = TRUE,
25-
#' num.trees = 200)
35+
#' num.trees = 100,
36+
#' seed = 1)
2637
#'
27-
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
28-
#' explainer_rf <- DALEX::explain(rf_model, data = german[,-1], y = y_numeric)
2938
#'
30-
#' fobject <- fairness_check(explainer_lm, explainer_rf,
31-
#' protected = german$Sex,
32-
#' privileged = "male")
39+
#' explainer_rf <- DALEX::explain(rf_model,
40+
#' data = german[,-1],
41+
#' y = y_numeric)
3342
#'
43+
#' fobject <- fairness_check(explainer_rf, fobject)
3444
#'
3545
#' ac <- all_cutoffs(fobject)
3646
#' plot(ac)
37-
#'
47+
#' }
3848

3949
all_cutoffs <- function(x,
4050
grid_points = 101,

R/ceteris_paribus_cutoff.R

+12-3
Original file line numberDiff line numberDiff line change
@@ -26,26 +26,35 @@
2626
#' y_numeric <- as.numeric(two_yr_recidivism) -1
2727
#' compas$Two_yr_Recidivism <- two_yr_recidivism
2828
#'
29+
#'
2930
#' lm_model <- glm(Two_yr_Recidivism~.,
3031
#' data=compas,
3132
#' family=binomial(link="logit"))
3233
#'
34+
#' explainer_lm <- DALEX::explain(lm_model, data = compas[,-1], y = y_numeric)
35+
#'
36+
#' fobject <- fairness_check(explainer_lm,
37+
#' protected = compas$Ethnicity,
38+
#' privileged = "Caucasian")
39+
#'
40+
#' cpc <- ceteris_paribus_cutoff(fobject, "African_American")
41+
#' plot(cpc)
42+
#'
43+
#' \donttest{
3344
#' rf_model <- ranger::ranger(Two_yr_Recidivism ~.,
3445
#' data = compas,
3546
#' probability = TRUE,
3647
#' num.trees = 200)
3748
#'
38-
#' explainer_lm <- DALEX::explain(lm_model, data = compas[,-1], y = y_numeric)
3949
#' explainer_rf <- DALEX::explain(rf_model, data = compas[,-1], y = y_numeric)
4050
#'
4151
#' fobject <- fairness_check(explainer_lm, explainer_rf,
4252
#' protected = compas$Ethnicity,
4353
#' privileged = "Caucasian")
4454
#'
4555
#' cpc <- ceteris_paribus_cutoff(fobject, "African_American")
46-
#'
4756
#' plot(cpc)
48-
#'
57+
#' }
4958

5059
ceteris_paribus_cutoff <- function(x,
5160
subgroup,

R/choose_metric.R

+15-4
Original file line numberDiff line numberDiff line change
@@ -41,21 +41,32 @@
4141
#' data = german,
4242
#' family=binomial(link="logit"))
4343
#'
44+
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
45+
#'
46+
#' fobject <- fairness_check(explainer_lm,
47+
#' protected = german$Sex,
48+
#' privileged = "male")
49+
#'
50+
#'
51+
#' cm <- choose_metric(fobject, "TPR")
52+
#' plot(cm)
53+
#'
54+
#' \donttest{
4455
#' rf_model <- ranger::ranger(Risk ~.,
4556
#' data = german,
4657
#' probability = TRUE,
4758
#' num.trees = 200)
4859
#'
49-
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
60+
#'
5061
#' explainer_rf <- DALEX::explain(rf_model, data = german[,-1], y = y_numeric)
5162
#'
52-
#' fobject <- fairness_check(explainer_lm, explainer_rf,
53-
#' protected = german$Sex,
54-
#' privileged = "male")
63+
#' fobject <- fairness_check(explainer_rf, fobject)
5564
#'
5665
#' cm <- choose_metric(fobject, "TPR")
5766
#' plot(cm)
5867
#'
68+
#' }
69+
#'
5970

6071

6172
choose_metric <- function(x, fairness_metric = "FPR"){

R/expand_fairness_object.R

+11-4
Original file line numberDiff line numberDiff line change
@@ -22,20 +22,27 @@
2222
#' data = german,
2323
#' family=binomial(link="logit"))
2424
#'
25+
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
26+
#'
27+
#' fobject <- fairness_check(explainer_lm,
28+
#' protected = german$Sex,
29+
#' privileged = "male")
30+
#' expand_fairness_object(fobject, drop_metrics_with_na = TRUE)
31+
#'
32+
#' \donttest{
2533
#' rf_model <- ranger::ranger(Risk ~.,
2634
#' data = german,
2735
#' probability = TRUE,
2836
#' num.trees = 200)
2937
#'
30-
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
38+
#'
3139
#' explainer_rf <- DALEX::explain(rf_model, data = german[,-1], y = y_numeric)
3240
#'
33-
#' fobject <- fairness_check(explainer_lm, explainer_rf,
34-
#' protected = german$Sex,
35-
#' privileged = "male")
41+
#' fobject <- fairness_check(explainer_rf, fobject)
3642
#'
3743
#' expand_fairness_object(fobject, drop_metrics_with_na = TRUE)
3844
#'
45+
#' }
3946

4047
expand_fairness_object <- function(x, scale = FALSE, drop_metrics_with_na = FALSE, fairness_metrics = NULL){
4148

R/fairness_check.R

+10-5
Original file line numberDiff line numberDiff line change
@@ -92,25 +92,30 @@
9292
#' data = german,
9393
#' family=binomial(link="logit"))
9494
#'
95+
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
96+
#'
97+
#' fobject <- fairness_check(explainer_lm,
98+
#' protected = german$Sex,
99+
#' privileged = "male")
100+
#' plot(fobject)
101+
#'
102+
#' \donttest{
95103
#' rf_model <- ranger::ranger(Risk ~.,
96104
#' data = german,
97105
#' probability = TRUE,
98106
#' max.depth = 3,
99107
#' num.trees = 100,
100108
#' seed = 1)
101109
#'
102-
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
103110
#'
104111
#' explainer_rf <- DALEX::explain(rf_model,
105112
#' data = german[,-1],
106113
#' y = y_numeric)
107114
#'
108-
#' fobject <- fairness_check(explainer_lm, explainer_rf,
109-
#' protected = german$Sex,
110-
#' privileged = "male")
115+
#' fobject <- fairness_check(explainer_rf, fobject)
111116
#'
112117
#' plot(fobject)
113-
#'
118+
#'}
114119

115120

116121
fairness_check <- function(x,

R/fairness_heatmap.R

+2-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,8 @@
3232
#' rf_model <- ranger::ranger(Risk ~.,
3333
#' data = german,
3434
#' probability = TRUE,
35-
#' num.trees = 200)
35+
#' num.trees = 200,
36+
#' num.threads = 1)
3637
#'
3738
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
3839
#' explainer_rf <- DALEX::explain(rf_model, data = german[,-1], y = y_numeric)

R/fairness_pca.R

+2-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,8 @@
2929
#' rf_model <- ranger::ranger(Risk ~.,
3030
#' data = german,
3131
#' probability = TRUE,
32-
#' num.trees = 200)
32+
#' num.trees = 200,
33+
#' num.threads = 1)
3334
#'
3435
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
3536
#' explainer_rf <- DALEX::explain(rf_model, data = german[,-1], y = y_numeric)

R/fairness_radar.R

+18-5
Original file line numberDiff line numberDiff line change
@@ -22,17 +22,29 @@
2222
#' data = german,
2323
#' family=binomial(link="logit"))
2424
#'
25+
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
26+
#'
27+
#' fobject <- fairness_check(explainer_lm,
28+
#' protected = german$Sex,
29+
#' privileged = "male")
30+
#'
31+
#' fradar <- fairness_radar(fobject, fairness_metrics = c("ACC", "STP", "TNR",
32+
#' "TPR", "PPV"))
33+
#'
34+
#' plot(fradar)
35+
#'
36+
#' \donttest{
37+
#'
2538
#' rf_model <- ranger::ranger(Risk ~.,
2639
#' data = german,
2740
#' probability = TRUE,
28-
#' num.trees = 200)
41+
#' num.trees = 200,
42+
#' num.threads = 1)
43+
#'
2944
#'
30-
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
3145
#' explainer_rf <- DALEX::explain(rf_model, data = german[,-1], y = y_numeric)
3246
#'
33-
#' fobject <- fairness_check(explainer_lm, explainer_rf,
34-
#' protected = german$Sex,
35-
#' privileged = "male")
47+
#' fobject <- fairness_check(explainer_rf, fobject)
3648
#'
3749
#'
3850
#' fradar <- fairness_radar(fobject, fairness_metrics = c("ACC",
@@ -42,6 +54,7 @@
4254
#' "PPV"))
4355
#'
4456
#' plot(fradar)
57+
#' }
4558

4659

4760
fairness_radar <- function(x, fairness_metrics = c('ACC', 'TPR', 'PPV', 'FPR', 'STP')){

R/group_metric.R

+15-4
Original file line numberDiff line numberDiff line change
@@ -52,22 +52,33 @@
5252
#' data = german,
5353
#' family=binomial(link="logit"))
5454
#'
55+
#'
56+
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
57+
#'
58+
#' fobject <- fairness_check(explainer_lm,
59+
#' protected = german$Sex,
60+
#' privileged = "male")
61+
#'
62+
#' gm <- group_metric(fobject, "TPR", "f1", parity_loss = TRUE)
63+
#' plot(gm)
64+
#'
65+
#' \donttest{
66+
#'
5567
#' rf_model <- ranger::ranger(Risk ~.,
5668
#' data = german,
5769
#' probability = TRUE,
5870
#' num.trees = 200)
5971
#'
60-
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
6172
#' explainer_rf <- DALEX::explain(rf_model, data = german[,-1], y = y_numeric)
6273
#'
63-
#' fobject <- fairness_check(explainer_lm, explainer_rf,
64-
#' protected = german$Sex,
65-
#' privileged = "male")
74+
#' fobject <- fairness_check(explainer_rf, fobject)
6675
#'
6776
#' gm <- group_metric(fobject, "TPR", "f1", parity_loss = TRUE)
6877
#'
6978
#' plot(gm)
7079
#'
80+
#'}
81+
#'
7182
#' @return \code{group_metric} object.
7283
#' It is a list with following items:
7384
#' \itemize{

R/metric_scores.R

+15-4
Original file line numberDiff line numberDiff line change
@@ -25,21 +25,32 @@
2525
#' data = german,
2626
#' family=binomial(link="logit"))
2727
#'
28+
#'
29+
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
30+
#'
31+
#' fobject <- fairness_check(explainer_lm,
32+
#' protected = german$Sex,
33+
#' privileged = "male")
34+
#'
35+
#' ms <- metric_scores(fobject, fairness_metrics = c('ACC', 'TPR', 'PPV', 'FPR', 'STP'))
36+
#' plot(ms)
37+
#'
38+
#' \donttest{
39+
#'
2840
#' rf_model <- ranger::ranger(Risk ~.,
2941
#' data = german,
3042
#' probability = TRUE,
3143
#' num.trees = 200)
3244
#'
33-
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
3445
#' explainer_rf <- DALEX::explain(rf_model, data = german[,-1], y = y_numeric)
3546
#'
36-
#' fobject <- fairness_check(explainer_lm, explainer_rf,
37-
#' protected = german$Sex,
38-
#' privileged = "male")
47+
#' fobject <- fairness_check(explainer_rf, fobject)
3948
#'
4049
#' ms <- metric_scores(fobject, fairness_metrics = c('ACC', 'TPR', 'PPV', 'FPR', 'STP'))
4150
#' plot(ms)
4251
#'
52+
#' }
53+
#'
4354

4455

4556

R/performance_and_fairness.R

+14-4
Original file line numberDiff line numberDiff line change
@@ -32,17 +32,26 @@
3232
#' data = german,
3333
#' family=binomial(link="logit"))
3434
#'
35+
#'
36+
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
37+
#'
38+
#' fobject <- fairness_check(explainer_lm,
39+
#' protected = german$Sex,
40+
#' privileged = "male")
41+
#'
42+
#' paf <- performance_and_fairness(fobject)
43+
#' plot(paf)
44+
#'
45+
#' \donttest{
46+
#'
3547
#' rf_model <- ranger::ranger(Risk ~.,
3648
#' data = german,
3749
#' probability = TRUE,
3850
#' num.trees = 200)
3951
#'
40-
#' explainer_lm <- DALEX::explain(lm_model, data = german[,-1], y = y_numeric)
4152
#' explainer_rf <- DALEX::explain(rf_model, data = german[,-1], y = y_numeric)
4253
#'
43-
#' fobject <- fairness_check(explainer_lm, explainer_rf,
44-
#' protected = german$Sex,
45-
#' privileged = "male")
54+
#' fobject <- fairness_check(explainer_rf, fobject)
4655
#'
4756
#' # same explainers with different cutoffs for female
4857
#' fobject <- fairness_check(explainer_lm, explainer_rf, fobject,
@@ -55,6 +64,7 @@
5564
#'
5665
#' plot(paf)
5766
#'
67+
#'}
5868

5969

6070

0 commit comments

Comments
 (0)