Nothing
Package uplift by Guelman (https://github.com/cran/uplift).
Simple plot reproduces uplift
package's qini(...)
plot.
library(uplifteval) set.seed(123) alpha <- 0.1 n <- 1000 W <- rbinom(n, 1, 0.5) Y <- W p1 <- Y + alpha*rnorm(n) plot_uplift_guelman(p1, W, Y, groups=10)
Now work with a slightly more realistic toy model.
library(grf) rl <- function(x){ round(1/(1+exp(-x))) } n = 2000; p = 10 X = matrix(rnorm(n*p), n, p) W = rbinom(n, 1, 0.2) Y = rl(rl(X[,1]) * W - rl(X[,3]) * W + rnorm(n)) tau.forest = causal_forest(X, Y, W) tau.hat = predict(tau.forest, X) plot_uplift_guelman(tau.hat$predictions, W, Y)
The uplift
package splits into quantiles, but can have issues finding splits when distributions are highly concentrated.
library(tweedie) # # Case: plot_uplift_guelman fails to find quantiles # # Generate equal prediction distributions n <- 1000 W <- rbinom(n, 1, 0.5) Y <- rbinom(n, 1, 0.5) p1 <- rtweedie(n, xi=1.4, mu=1, phi=1) hist(p1,100) plot_uplift_guelman(p1, W, Y, groups=10)
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.