
Compare Multiple Data Frames on a Bivariate Level
biv_compare.RdCompare multiple data frames on a bivariate level and plot them together.
Usage
biv_compare(
  dfs,
  benchmarks,
  variables = NULL,
  corrtype = "r",
  data = TRUE,
  id = NULL,
  weight = NULL,
  strata = NULL,
  id_bench = NULL,
  weight_bench = NULL,
  strata_bench = NULL,
  p_value = NULL,
  p_adjust = NULL,
  varlabels = NULL,
  plot_title = NULL,
  plots_label = NULL,
  diff_perc = TRUE,
  diff_perc_size = 4.5,
  perc_diff_transparance = 0,
  note = FALSE,
  order = NULL,
  breaks = NULL,
  colors = NULL,
  mar = c(0, 0, 0, 0),
  grid = "white",
  gradient = FALSE,
  sum_weights = NULL,
  missings_x = TRUE,
  remove_nas = "pairwise",
  ncol_facet = 3,
  nboots = 0,
  boot_all = FALSE,
  parallel = FALSE,
  adjustment_weighting = "raking",
  adjustment_vars = NULL,
  raking_targets = NULL,
  post_targets = NULL,
  percentile_ci = TRUE
)Arguments
- dfs
 A character vector containing the names of data frames to compare against the
benchmarks.- benchmarks
 A character vector containing the names of benchmarks to compare the
dfsagainst, or the names of a list. If it is a list, it has to be of the form, as the output of rcorr, with a Pearson's r matrix in the first position, a n-matrix (matrix of n for every correlation) in the second position and a p-matrix in the third position. The vector must either be the same length asdfs, or length 1. If it has length one every survey will be compared against the same benchmark.- variables
 A character vector that containes the names of the variables for the comparison. If it is
NULL, all variables that are named similarly in both thedfsand the benchmarks will be compared. Variables missing in one of thedfsor thebenchmarkswill be neglected for this comparison.- corrtype
 A character string, indicating the type of the bivariate correlation. It can either be "r" for Pearson's r or "rho" for Spearman's "rho". At the moment, rho is only applicable to unweighted data.
- data
 If
TRUE, a biv_compare object is returned, containing the results of the comparison.- strata, strata_bench
 A character vector that determines strata variables that are used to weigh the
dfsorbenchmarkswith the help of thesurveypackage. It has to be part of the respective data frame. If fewer characters strings are provided, than indfs, the first input is used to weigh every df or benchmark, where no input is provided.- id_bench, id
 A character vector determining id variables used to weigh the
dfsorbenchmarkswith the help of thesurveypackage. They have to be part of the respective data frame. If less characters strings are provided, than indfs, the first input is used to weigh everydforbenchmark, where no input is provided.- weight_bench, weight
 A character vector that determines variables to weigh the
dfsofbenchmarks. They have to be part of the respective data frame. If fewer characters strings are provided, than indfs, the first input is used to weigh every df or benchmark, where no input is provided. If a weight variable is provided also an id variable is needed. For weighting, thesurveypackage is used.- p_value
 A number between zero and one to determine the maximum significance niveau.
- p_adjust
 Can be either
TRUEor a character string indicating an adjustment method. Ifp_adjust = TRUEthe p_values will be adjusted with the Bonferroni adjustment method, by default, to account for the problem of multiple comparisons. All adjustment methods available inp.adjustcan be used here, with the same character strings.- varlabels
 A character string or vector of character strings containing the new names of variables that is used in the plot.
- plot_title
 A character string containing the title of the plot.
- plots_label
 A character string or vector of character strings containing the new names of the data frames that are used in the plot.
- diff_perc
 If
TRUEa percental difference between surveys and benchmarks is displayed in the plot.- diff_perc_size
 A number to determine the size of the displayed percental difference between surveys in the plot.
- perc_diff_transparance
 A number to determine the transparency of the displayed percental difference between surveys in the plot.
- note
 If
note = TRUE, a note will be displayed to describe the plot.- order
 A character vector to determine in which order the variables should be displayed in the plot.
- breaks
 A vector to label the color scheme in the legend.
- colors
 A vector to determine the colors in the plot.
- mar
 A vector that determines the margins of the plot.
- grid
 A color string, that determines the color of the lines between the tiles of the heatmap.
- gradient
 If
gradient = TRUE, colors in the heatmap will be more or less transparent, depending on the difference in Pearson's r of the data frames of comparison.- sum_weights
 A vector containing information for every variable to weigh them in the displayed percental-difference calculation. It can be used if some variables are over- or underrepresented in the analysis.
- missings_x
 If
TRUE, missing pairs in the plot will be marked with an X.- remove_nas
 A character string, that indicates how missing values should be removed, can either be
"all", to remove all cases that contain NA in any of the variables, or"pairwise", to remove NAs separately for every variable pair when calculating Pearson's r.- ncol_facet
 The number of columns used in faced_wrap() for the plots.
- nboots
 A numeric value indicating the number of bootstrap replications. If
nboots = 0no bootstrapping will be performed. Elsenbootsmust be >2. Note, that bootstrapping can be very computationally heavy and can therefore take a while.- boot_all
 If TURE, both, dfs and benchmarks will be bootstrapped. Otherwise the benchmark estimate is assumed to be constant.
- parallel
 Can be either
FALSEor a number of cores that should be used in the function. If it isFALSE, only one core will be used and otherwise the given number of cores will be used.- adjustment_weighting
 A character vector indicating if adjustment weighting should be used. It can either be
"raking"or"post_start".- adjustment_vars
 Variables used to adjust the survey when using raking or post-stratification.
- raking_targets
 A list of raking targets that can be given to the rake function of
rake, to rake thedfs.- post_targets
 A list of post_stratification targets that can be given to the
postStratifyfunction, to post-stratify thedfs.- percentile_ci
 If TURE, cofidence intervals will be calculated using the percentile method. If False, they will be calculated using the normal method.
Value
A object generated with the help of ggplot2::ggplot2() visualizes
the differences between the data frames and benchmarks. If data = TRUE
instead of the plot a list will be returned containing information of the
analyses. This biv_compare object can be used in
plot_biv_compare to build a plot, or in biv_compare_table,
to get a table.
Details
The plot shows a heatmap of a correlation matrix, where the colors are determined by the similarity of the Pearson's r values in both sets of respondents. Leaving default breaks and colors,
Same(green) indicates, that the Pearson's r correlation is not significant > 0 in the related data frame or benchmark or the Pearson's r correlations are not significantly different, between data frame and benchmark.Small Diff(yellow) indicates that the Pearson's r correlation is significant > 0 in the related data frame or benchmark and the Pearson's r correlations are significantly different, between data frame and benchmark.Large Diff(red) indicates, that the same conditions of yellow are fulfilled, and the correlations are either in opposite directions,or one is double the size of the other.
Examples
## Get Data for comparison
data("card")
north <- card[card$south==0,]
white <- card[card$black==0,]
## use the function to plot the data 
bivar_comp<-sampcompR::biv_compare(dfs = c("north","white"),
                                   benchmarks = c("card","card"),
                                   variables= c("age","educ","fatheduc","motheduc","wage","IQ"),
                                   data=FALSE)
#> Error in get(dfs[i]): object 'north' not found
bivar_comp
#> Error: object 'bivar_comp' not found