View source: R/show_residuals.R
| show_residuals | R Documentation | 
Function show_residuals adds a layer to a plot created with
plot.ceteris_paribus_explainer for selected observations.
Note that the y argument has to be specified in the ceteris_paribus function.
show_residuals( x, ..., size = 0.75, alpha = 1, color = c(`TRUE` = "#8bdcbe", `FALSE` = "#f05a71"), variables = NULL )
x | 
 a ceteris paribus explainer produced with function   | 
... | 
 other explainers that shall be plotted together  | 
size | 
 a numeric. Size of lines to be plotted  | 
alpha | 
 a numeric between   | 
color | 
 a character. Either name of a color or name of a variable that should be used for coloring  | 
variables | 
 if not   | 
a ggplot2 layer
Explanatory Model Analysis. Explore, Explain, and Examine Predictive Models. https://ema.drwhy.ai/
library("DALEX")
library("ingredients")
library("ranger")
johny_d <- data.frame(
  class = factor("1st", levels = c("1st", "2nd", "3rd", "deck crew", "engineering crew",
                                   "restaurant staff", "victualling crew")),
  gender = factor("male", levels = c("female", "male")),
  age = 8,
  sibsp = 0,
  parch = 0,
  fare = 72,
  embarked = factor("Southampton", levels = c("Belfast", "Cherbourg", "Queenstown", "Southampton"))
)
model_titanic_rf <- ranger(survived ~., data = titanic_imputed, probability = TRUE)
explain_titanic_rf <- explain(model_titanic_rf,
                              data = titanic_imputed[,-8],
                              y = titanic_imputed[,8],
                              label = "ranger forest",
                              verbose = FALSE)
johny_neighbours <- select_neighbours(data = titanic_imputed,
                                      observation = johny_d,
                                      variables = c("age", "gender", "class",
                                                  "fare", "sibsp", "parch"),
                                      n = 10)
cp_neighbours <- ceteris_paribus(explain_titanic_rf,
                                 johny_neighbours,
                                 y = johny_neighbours$survived == "yes",
                                 variable_splits = list(age = seq(0,70, length.out = 1000)))
plot(cp_neighbours, variables = "age") +
  show_observations(cp_neighbours, variables = "age")
cp_johny <- ceteris_paribus(explain_titanic_rf, johny_d,
                            variable_splits = list(age = seq(0,70, length.out = 1000)))
plot(cp_johny, variables = "age", size = 1.5, color = "#8bdcbe") +
  show_profiles(cp_neighbours, variables = "age", color = "#ceced9") +
  show_observations(cp_johny, variables = "age", size = 5, color = "#371ea3") +
  show_residuals(cp_neighbours, variables = "age")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.