waterfall {EIX} | R Documentation |

## Explain prediction of a single observation

### Description

This function calculates a table with influence of variables and interactions on the prediction of a given observation. It supports only xgboost models.

### Usage

```
waterfall(
xgb_model,
new_observation,
data,
type = "binary",
option = "interactions",
baseline = 0
)
```

### Arguments

`xgb_model` |
a xgboost model. |

`new_observation` |
a new observation. |

`data` |
row from the original dataset with the new observation to explain (not one-hot-encoded).
The param above has to be set to merge categorical features.
If you dont wont to merge categorical features, set this parameter the same as |

`type` |
the learning task of the model. Available tasks: "binary" for binary classification or "regression" for linear regression. |

`option` |
if "variables", the plot includes only single variables, if "interactions", then only interactions. Default "interaction". |

`baseline` |
a number or a character "Intercept" (for model intercept). The baseline for the plot, where the rectangles should start. Default 0. |

### Details

The function contains code or pieces of code
from `breakDown`

code created by Przemysław Biecek
and `xgboostExplainer`

code created by David Foster.

### Value

an object of the broken class

### Examples

```
library("EIX")
library("Matrix")
sm <- sparse.model.matrix(left ~ . - 1, data = HR_data)
library("xgboost")
param <- list(objective = "binary:logistic", max_depth = 2)
xgb_model <- xgboost(sm, params = param, label = HR_data[, left] == 1, nrounds = 25, verbose=0)
data <- HR_data[9,-7]
new_observation <- sm[9,]
wf <- waterfall(xgb_model, new_observation, data, option = "interactions")
wf
plot(wf)
```

*EIX*version 1.2.0 Index]