vignettes/SmartTwoPlots.Rmd
SmartTwoPlots.Rmd
In exploratory data analysis, it is common to want to make two different plots for same variables. For example, a survey data may have a large number of questions like age, gender, region etc. It includes several categorical and numerical features. Suppose a analyst want to see age variable distributions with gender and without gender in side by side view. There is no direct functions available in any of the statistical packages. Here is a way to achieve the same thing using R using ggplot2 customized function ExpTwoPlots
Function definition:
ExpTwoPlots(
data,
plot_type = "numeric",
iv_variables = NULL,
target = NULL,
lp_geom_type = "boxplot",
lp_arg_list = list(),
rp_geom_type = "boxplot",
rp_arg_list = list(),
fname = NULL,
page = NULL,
theme = "Default"
)
Different use cases
target = "gear"
categorical_features <- c("vs", "carb") # we can add as many categorical variables
numeircal_features <- c("mpg", "qsec") # we can add as many numerical variables
num_1 <- ExpTwoPlots(mtcars,
plot_type = "numeric",
iv_variables = numeircal_features,
target = NULL,
lp_arg_list = list(fill="orange"),
lp_geom_type = 'boxplot',
rp_arg_list = list(alpha=0.5, fill="white", color = "red", binwidth=1),
rp_geom_type = 'histogram',
page = c(2,1),
theme = "Default")
num_1
## $`0`
num_2 <- ExpTwoPlots(mtcars,
plot_type = "numeric",
iv_variables = numeircal_features,
target = NULL,
lp_arg_list = list(fill = "white",color = "red", binwidth=1),
lp_geom_type = 'histogram',
rp_arg_list = list(alpha=0.5, fill="red"),
rp_geom_type = 'density',
page = c(2,1),
theme = "Default")
num_2
## $`0`
num_3 <- ExpTwoPlots(mtcars,
plot_type = "numeric",
iv_variables = numeircal_features,
target = NULL,
lp_arg_list = list(color = "red"),
lp_geom_type = 'density',
rp_arg_list = list(fill="orange"),
rp_geom_type = 'boxplot',
page = c(2,1),
theme = "Default")
num_3
## $`0`
num_4 <- ExpTwoPlots(mtcars,
plot_type = "numeric",
iv_variables = numeircal_features,
target = NULL,
lp_arg_list = list(fill = "blue"),
lp_geom_type = 'qqplot',
rp_arg_list = list(fill="orange"),
rp_geom_type = 'boxplot',
page = c(2,1),
theme = "Default")
num_4
## $`0`
num_21 <- ExpTwoPlots(mtcars,
plot_type = "numeric",
iv_variables = numeircal_features,
target = "gear",
lp_arg_list = list(fill="pink"),
lp_geom_type = 'boxplot',
rp_arg_list = list(alpha=0.5, fill = c("grey", "orange", "lightblue"), binwidth=1),
rp_geom_type = 'histogram',
page = c(2,1),
theme = "Default")
num_21
## $`0`
num_22 <- ExpTwoPlots(mtcars,
plot_type = "numeric",
iv_variables = numeircal_features,
target = "gear",
lp_arg_list = list(fill = "white",color = "red", binwidth=1),
lp_geom_type = 'histogram',
rp_arg_list = list(alpha=0.5, fill = c("red", "orange", "pink")),
rp_geom_type = 'density',
page = c(2,1),
theme = "Default")
num_22
## $`0`
num_23 <- ExpTwoPlots(mtcars,
plot_type = "numeric",
iv_variables = numeircal_features,
target = "gear",
lp_arg_list = list(fill = "grey"),
lp_geom_type = 'density',
rp_arg_list = list(fill = c("blue", "orange", "pink"), alpha=0.5),
rp_geom_type = 'boxplot',
page = c(2,1),
theme = "Default")
num_23
## $`0`
num_24 <- ExpTwoPlots(mtcars,
plot_type = "numeric",
iv_variables = numeircal_features,
target = "gear",
lp_arg_list = list(fill = "grey"),
lp_geom_type = 'qqplot',
rp_arg_list = list(fill = c("blue", "orange", "pink"), alpha=0.5),
rp_geom_type = 'density',
page = c(2,1),
theme = "Default")
num_24
## $`0`
num_25 <- ExpTwoPlots(mtcars,
plot_type = "numeric",
iv_variables = numeircal_features,
target = "gear",
lp_arg_list = list(fill = "orange"),
lp_geom_type = 'boxplot',
rp_arg_list = list(fill = c("blue", "green", "red"), alpha=0.5),
rp_geom_type = 'qqplot',
page = c(2,1),
theme = "Default")
num_25
## $`0`
cat_1 <- ExpTwoPlots(mtcars,
plot_type = "categorical",
iv_variables = categorical_features,
target = NULL,
lp_arg_list = list(),
lp_geom_type = 'donut',
rp_arg_list = list(stat = 'identity'),
rp_geom_type = 'bar',
page = c(2,1),
theme = "Default")
cat_1
## $`0`
cat_2 <- ExpTwoPlots(mtcars,
plot_type = "categorical",
iv_variables = categorical_features,
target = NULL,
lp_arg_list = list(),
lp_geom_type = 'donut',
rp_arg_list = list(),
rp_geom_type = 'pie',
page = c(2,1),
theme = "Default")
cat_2
## $`0`
cat_3 <- ExpTwoPlots(mtcars,
plot_type = "categorical",
iv_variables = categorical_features,
target = NULL,
lp_arg_list = list(stat = 'identity'),
lp_geom_type = 'barh',
rp_arg_list = list(),
rp_geom_type = 'pie',
page = c(2,1),
theme = "Default")
cat_3
## $`0`
cat_41 <- ExpTwoPlots(mtcars,
plot_type = "categorical",
iv_variables = categorical_features,
target = 'gear',
lp_arg_list = list(),
lp_geom_type = 'donut',
rp_arg_list = list(stat = 'identity'),
rp_geom_type = 'bar',
page = c(2,1),
theme = "Default")
cat_41
## $`0`
cat_42 <- ExpTwoPlots(mtcars,
plot_type = "categorical",
iv_variables = categorical_features,
target = 'gear',
lp_arg_list = list(),
lp_geom_type = 'pie',
rp_arg_list = list(stat = 'identity'),
rp_geom_type = 'barh',
page = c(2,1),
theme = "Default")
cat_42
## $`0`