Creates an object of class dice.
Estimates the partial derivative function for each curve in an ice
object.
See Goldstein et al (2013) for further details.
dice(ice_obj, DerivEstimator)
ice_obj |
Object of class |
DerivEstimator |
Optional function with a single argument |
A list of class dice
with the following elements. Most are passed directly through
from ice_object
and exist to enable various plotting facilities.
d_ice_curves |
Matrix of dimension |
xj |
The actual values of |
actual_deriv |
Vector of length |
sd_deriv |
Vector of length |
logodds |
Passed from |
gridpts |
Passed from |
predictor |
Passed from |
xlab |
Passed from |
nominal_axis |
Passed from |
range_y |
Passed from |
Xice |
Passed from |
dpdp |
The estimated partial derivative of the PDP. |
Goldstein, A., Kapelner, A., Bleich, J., and Pitkin, E., Peeking
Inside the Black Box: Visualizing Statistical Learning With Plots of
Individual Conditional Expectation. (2014) Journal of Computational
and Graphical Statistics, in press
Martin Maechler et al. sfsmisc: Utilities from Seminar fuer Statistik ETH Zurich. R package version 1.0-24.
plot.dice, print.dice, summary.dice
## Not run: # same examples as for 'ice', but now create a derivative estimate as well. require(ICEbox) require(randomForest) require(MASS) #has Boston Housing data, Pima ######## regression example data(Boston) #Boston Housing data X = Boston y = X$medv X$medv = NULL ## build a RF: bhd_rf_mod = randomForest(X, y) ## Create an 'ice' object for the predictor "age": bhd.ice = ice(object = bhd_rf_mod, X = X, y = y, predictor = "age", frac_to_build = .1) # make a dice object: bhd.dice = dice(bhd.ice) #### classification example data(Pima.te) #Pima Indians diabetes classification y = Pima.te$type X = Pima.te X$type = NULL ## build a RF: pima_rf = randomForest(x = X, y = y) ## Create an 'ice' object for the predictor "skin": # For classification we plot the centered log-odds. If we pass a predict # function that returns fitted probabilities, setting logodds = TRUE instructs # the function to set each ice curve to the centered log-odds of the fitted # probability. pima.ice = ice(object = pima_rf, X = X, predictor = "skin", logodds = TRUE, predictfcn = function(object, newdata){ predict(object, newdata, type = "prob")[, 2] } ) # make a dice object: pima.dice = dice(pima.ice) ## End(Not run)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.