Computes bivariate association measures between a response and predictor variables (and, optionnaly, between every pairs of predictor variables.)

assoc.yx(y, x, weights = NULL, xx = TRUE, correlation = "kendall",
  na.rm.cat = FALSE, na.value.cat = "NAs", na.rm.cont = FALSE,
  nperm = NULL, distrib = "asympt", dec = c(3,3))

Arguments

y

the response variable

x

the predictor variables

weights

numeric vector of weights. If NULL (default), uniform weights (i.e. all equal to 1) are used.

xx

whether the association measures should be computed for couples of predictor variables (default) or not. With a lot of predictors, consider setting xx to FALSE (for reasons of computation time).

correlation

character. The type of measure of correlation measure to use between two continuous variables : "pearson", "spearman" or "kendall" (default).

na.rm.cat

logical, indicating whether NA values in the categorical variables should be silently removed before the computation proceeds. If FALSE (default), an additional level is added to the categorical variables (see na.value.cat argument).

na.value.cat

character. Name of the level for NA category. Default is "NAs". Only used if na.rm.cat = FALSE.

na.rm.cont

logical, indicating whether NA values in the continuous variables should be silently removed before the computation proceeds. Default is FALSE.

nperm

numeric. Number of permutations for the permutation test of independence. If NULL (default), no permutation test is performed.

distrib

the null distribution of permutation test of independence can be approximated by its asymptotic distribution ("asympt", default) or via Monte Carlo resampling ("approx").

dec

vector of 2 integers for number of decimals. The first value if for association measures, the second for permutation p-values. Default is c(3,3).

Details

The function computes an association measure : Pearson's, Spearman's or Kendall's correlation for pairs of numeric variables, Cramer's V for pairs of factors and eta-squared for pairs numeric-factor. It can also compute the p-value of a permutation test of association for each pair of variables.

Value

A list of the following items :

YX

: a table with the association measures between the response and predictor variables

XX

: a table with the association measures between every pairs of predictor variables

In each table :

measure

: name of the association measure

association

: value of the association measure

permutation.pvalue

: p-value from the permutation test

Author

Nicolas Robette

Examples

  data(iris)
  iris2 = iris
  iris2$Species = factor(iris$Species == "versicolor")
  assoc.yx(iris2$Species,iris2[,1:4],nperm=10)
#> $YX
#>       variable measure association permutation.pvalue
#> 1  Sepal.Width    Eta2       0.219              0.000
#> 2 Petal.Length    Eta2       0.041              0.000
#> 3  Petal.Width    Eta2       0.014              0.005
#> 4 Sepal.Length    Eta2       0.006              0.463
#> 
#> $XX
#>      variable1    variable2     measure association permutation.pvalue
#> 1 Petal.Length  Petal.Width Kendall tau       0.807              0.000
#> 2 Sepal.Length Petal.Length Kendall tau       0.719              0.000
#> 3 Sepal.Length  Petal.Width Kendall tau       0.655              0.000
#> 4  Sepal.Width Petal.Length Kendall tau      -0.186              0.000
#> 5  Sepal.Width  Petal.Width Kendall tau      -0.157              0.000
#> 6 Sepal.Length  Sepal.Width Kendall tau      -0.077              0.057
#>