Calculates correlations between multiple variables.
Usage
mcor_test(
x,
y = NULL,
estimate = TRUE,
p.value = FALSE,
method = "spearman",
method_adjust = "BH"
)Arguments
- x
Data frame containing numerical variables.
- y
Data frame containing numerical variables. If
NULL, correlations are calculated withinx.- estimate
Logical specifying whether to return correlation coefficients.
- p.value
Logical specifying whether to return adjusted p-values.
- method
Character specifying the correlation method:
pearson,kendall, orspearman.- method_adjust
Character specifying the p-value adjustment method.
Value
Depending on the values of estimate and p.value, one of the following:
- estimate = TRUE, p.value = FALSE
A numeric matrix of correlation coefficients, with columns corresponding to variables in
xand rows to variables iny.- estimate = FALSE, p.value = TRUE
A numeric matrix of adjusted p-values, with columns corresponding to variables in
xand rows to variables iny.- estimate = TRUE, p.value = TRUE
A named list with two elements:
- estimate
Numeric matrix of correlation coefficients.
- p.value
Numeric matrix of adjusted p-values.
Examples
library(magrittr)
x0 <- runif(20)
x <- lapply(
c(1, -1),
function(i) sapply(seq(10), function(j) x0 * i + runif(10, max = 1))
) %>%
Reduce(cbind, .) %>%
set_colnames(paste("Variable", seq(20)))
y <- lapply(
c(1, -1),
function(i) sapply(seq(10), function(j) x0 * i + runif(10, max = 1))
) %>%
Reduce(cbind, .) %>%
set_colnames(paste("Variable", seq(20))) %>%
.[, seq(5)]
mcor_test(x)
#> Variable 1 Variable 2 Variable 3 Variable 4 Variable 5
#> Variable 1 1.0000000 0.56992481 0.6796992 0.296240602 0.6090226
#> Variable 2 0.5699248 1.00000000 0.5172932 0.433082707 0.4120301
#> Variable 3 0.6796992 0.51729323 1.0000000 0.682706767 0.6330827
#> Variable 4 0.2962406 0.43308271 0.6827068 1.000000000 0.6842105
#> Variable 5 0.6090226 0.41203008 0.6330827 0.684210526 1.0000000
#> Variable 6 0.3609023 0.72781955 0.4646617 0.554887218 0.5308271
#> Variable 7 0.6511278 0.68872180 0.3894737 -0.067669173 0.2285714
#> Variable 8 0.6857143 0.64812030 0.6616541 0.670676692 0.7022556
#> Variable 9 0.5368421 0.58345865 0.5338346 0.699248120 0.7909774
#> Variable 10 0.1729323 0.28270677 0.6496241 0.809022556 0.5052632
#> Variable 11 -0.5443609 -0.53533835 -0.4872180 -0.697744361 -0.6045113
#> Variable 12 -0.5263158 -0.41503759 -0.8827068 -0.730827068 -0.5849624
#> Variable 13 -0.4451128 -0.55939850 -0.6511278 -0.715789474 -0.7112782
#> Variable 14 -0.2977444 -0.35488722 -0.2406015 -0.006015038 -0.2375940
#> Variable 15 -0.4330827 -0.33233083 -0.6842105 -0.926315789 -0.7413534
#> Variable 16 -0.5082707 -0.59849624 -0.7624060 -0.738345865 -0.6872180
#> Variable 17 -0.4135338 -0.25112782 -0.5082707 -0.533834586 -0.7428571
#> Variable 18 -0.6857143 -0.75338346 -0.6300752 -0.649624060 -0.8691729
#> Variable 19 -0.6616541 -0.69924812 -0.7879699 -0.592481203 -0.4661654
#> Variable 20 -0.3924812 -0.02255639 -0.6345865 -0.246616541 -0.5278195
#> Variable 6 Variable 7 Variable 8 Variable 9 Variable 10
#> Variable 1 0.3609023 0.65112782 0.68571429 0.53684211 0.17293233
#> Variable 2 0.7278195 0.68872180 0.64812030 0.58345865 0.28270677
#> Variable 3 0.4646617 0.38947368 0.66165414 0.53383459 0.64962406
#> Variable 4 0.5548872 -0.06766917 0.67067669 0.69924812 0.80902256
#> Variable 5 0.5308271 0.22857143 0.70225564 0.79097744 0.50526316
#> Variable 6 1.0000000 0.57142857 0.37443609 0.47669173 0.42556391
#> Variable 7 0.5714286 1.00000000 0.27669173 0.22706767 -0.04661654
#> Variable 8 0.3744361 0.27669173 1.00000000 0.92180451 0.58496241
#> Variable 9 0.4766917 0.22706767 0.92180451 1.00000000 0.66165414
#> Variable 10 0.4255639 -0.04661654 0.58496241 0.66165414 1.00000000
#> Variable 11 -0.4736842 -0.17293233 -0.75939850 -0.76390977 -0.52932331
#> Variable 12 -0.4030075 -0.15939850 -0.64661654 -0.56691729 -0.74887218
#> Variable 13 -0.5654135 -0.24511278 -0.57142857 -0.57293233 -0.52781955
#> Variable 14 -0.4270677 -0.54285714 0.04511278 0.04210526 0.17593985
#> Variable 15 -0.4917293 0.01804511 -0.67218045 -0.69022556 -0.74887218
#> Variable 16 -0.5353383 -0.23909774 -0.62105263 -0.55488722 -0.53984962
#> Variable 17 -0.6661654 -0.25714286 -0.38496241 -0.55939850 -0.61654135
#> Variable 18 -0.7248120 -0.48270677 -0.75037594 -0.79398496 -0.44962406
#> Variable 19 -0.5729323 -0.56691729 -0.63308271 -0.49323308 -0.51428571
#> Variable 20 -0.1744361 -0.16390977 -0.23308271 -0.21804511 -0.30225564
#> Variable 11 Variable 12 Variable 13 Variable 14 Variable 15
#> Variable 1 -0.54436090 -0.5263158 -0.4451128 -0.297744361 -0.43308271
#> Variable 2 -0.53533835 -0.4150376 -0.5593985 -0.354887218 -0.33233083
#> Variable 3 -0.48721805 -0.8827068 -0.6511278 -0.240601504 -0.68421053
#> Variable 4 -0.69774436 -0.7308271 -0.7157895 -0.006015038 -0.92631579
#> Variable 5 -0.60451128 -0.5849624 -0.7112782 -0.237593985 -0.74135338
#> Variable 6 -0.47368421 -0.4030075 -0.5654135 -0.427067669 -0.49172932
#> Variable 7 -0.17293233 -0.1593985 -0.2451128 -0.542857143 0.01804511
#> Variable 8 -0.75939850 -0.6466165 -0.5714286 0.045112782 -0.67218045
#> Variable 9 -0.76390977 -0.5669173 -0.5729323 0.042105263 -0.69022556
#> Variable 10 -0.52932331 -0.7488722 -0.5278195 0.175939850 -0.74887218
#> Variable 11 1.00000000 0.6496241 0.2932331 0.036090226 0.78947368
#> Variable 12 0.64962406 1.0000000 0.4781955 0.123308271 0.76541353
#> Variable 13 0.29323308 0.4781955 1.0000000 0.335338346 0.57593985
#> Variable 14 0.03609023 0.1233083 0.3353383 1.000000000 -0.03458647
#> Variable 15 0.78947368 0.7654135 0.5759398 -0.034586466 1.00000000
#> Variable 16 0.33082707 0.5969925 0.9684211 0.290225564 0.60451128
#> Variable 17 0.45413534 0.5729323 0.4631579 0.142857143 0.62857143
#> Variable 18 0.58796992 0.5082707 0.8210526 0.309774436 0.61353383
#> Variable 19 0.38947368 0.5533835 0.7669173 0.258646617 0.54285714
#> Variable 20 0.26766917 0.6646617 0.1082707 0.234586466 0.38345865
#> Variable 16 Variable 17 Variable 18 Variable 19 Variable 20
#> Variable 1 -0.5082707 -0.4135338 -0.6857143 -0.6616541 -0.39248120
#> Variable 2 -0.5984962 -0.2511278 -0.7533835 -0.6992481 -0.02255639
#> Variable 3 -0.7624060 -0.5082707 -0.6300752 -0.7879699 -0.63458647
#> Variable 4 -0.7383459 -0.5338346 -0.6496241 -0.5924812 -0.24661654
#> Variable 5 -0.6872180 -0.7428571 -0.8691729 -0.4661654 -0.52781955
#> Variable 6 -0.5353383 -0.6661654 -0.7248120 -0.5729323 -0.17443609
#> Variable 7 -0.2390977 -0.2571429 -0.4827068 -0.5669173 -0.16390977
#> Variable 8 -0.6210526 -0.3849624 -0.7503759 -0.6330827 -0.23308271
#> Variable 9 -0.5548872 -0.5593985 -0.7939850 -0.4932331 -0.21804511
#> Variable 10 -0.5398496 -0.6165414 -0.4496241 -0.5142857 -0.30225564
#> Variable 11 0.3308271 0.4541353 0.5879699 0.3894737 0.26766917
#> Variable 12 0.5969925 0.5729323 0.5082707 0.5533835 0.66466165
#> Variable 13 0.9684211 0.4631579 0.8210526 0.7669173 0.10827068
#> Variable 14 0.2902256 0.1428571 0.3097744 0.2586466 0.23458647
#> Variable 15 0.6045113 0.6285714 0.6135338 0.5428571 0.38345865
#> Variable 16 1.0000000 0.4255639 0.8030075 0.8030075 0.21353383
#> Variable 17 0.4255639 1.0000000 0.6451128 0.3338346 0.52631579
#> Variable 18 0.8030075 0.6451128 1.0000000 0.6751880 0.25112782
#> Variable 19 0.8030075 0.3338346 0.6751880 1.0000000 0.11578947
#> Variable 20 0.2135338 0.5263158 0.2511278 0.1157895 1.00000000
mcor_test(
x,
y,
p.value = TRUE,
method = "pearson",
method_adjust = "bonferroni"
)
#> $estimate
#> Variable 1 Variable 2 Variable 3 Variable 4 Variable 5 Variable 6
#> Variable 1 0.6930649 0.5934205 0.7763150 0.5439073 0.6763834 0.2917385
#> Variable 2 0.7694336 0.5750536 0.6689827 0.5544297 0.5859511 0.5982085
#> Variable 3 0.7162498 0.4803971 0.7444100 0.4438939 0.6918574 0.4684188
#> Variable 4 0.2772068 0.6117186 0.6086672 0.5451322 0.7027050 0.7127954
#> Variable 5 0.5127312 0.5012391 0.7238603 0.6481814 0.7782744 0.5265259
#> Variable 7 Variable 8 Variable 9 Variable 10 Variable 11 Variable 12
#> Variable 1 0.4648594 0.7562646 0.6101677 0.4153970 -0.3557700 -0.5079931
#> Variable 2 0.5745633 0.5379127 0.4057782 0.2016333 -0.5987912 -0.4684760
#> Variable 3 0.4679337 0.4206028 0.4169883 0.1818059 -0.5353878 -0.7675129
#> Variable 4 0.4510827 0.4865558 0.6294397 0.5241940 -0.3113220 -0.5552403
#> Variable 5 0.4873282 0.6031720 0.6039895 0.4509700 -0.4350464 -0.4225119
#> Variable 13 Variable 14 Variable 15 Variable 16 Variable 17
#> Variable 1 -0.8366657 -0.3395364 -0.4728122 -0.8568026 -0.2737726
#> Variable 2 -0.5770977 -0.3727827 -0.6269257 -0.5882179 -0.4203314
#> Variable 3 -0.4455656 -0.6841199 -0.5754351 -0.5053452 -0.6267352
#> Variable 4 -0.6976094 -0.3662076 -0.4171242 -0.7013235 -0.5929716
#> Variable 5 -0.8015833 -0.3720145 -0.5965697 -0.7982842 -0.3721560
#> Variable 18 Variable 19 Variable 20
#> Variable 1 -0.7332692 -0.8343809 -0.2760067
#> Variable 2 -0.6602600 -0.7567811 -0.2308914
#> Variable 3 -0.6209564 -0.4166512 -0.8490359
#> Variable 4 -0.7780355 -0.4739555 -0.4982008
#> Variable 5 -0.7360396 -0.6980414 -0.3610323
#>
#> $p.value
#> Variable 1 Variable 2 Variable 3 Variable 4 Variable 5 Variable 6
#> Variable 1 0.070443220 0.5812482 0.005718262 1.0000000 0.105864071 1.00000000
#> Variable 2 0.007308453 0.7989379 0.125825051 1.0000000 0.662984661 0.53335473
#> Variable 3 0.038202557 1.0000000 0.016713965 1.0000000 0.072614882 1.00000000
#> Variable 4 1.000000000 0.4154275 0.439969217 1.0000000 0.054993437 0.04200209
#> Variable 5 1.000000000 1.0000000 0.030851148 0.1996106 0.005324128 1.00000000
#> Variable 7 Variable 8 Variable 9 Variable 10 Variable 11 Variable 12
#> Variable 1 1.0000000 0.01143166 0.4277553 1 1.0000000 1.000000000
#> Variable 2 0.8055523 1.00000000 1.0000000 1 0.5277546 1.000000000
#> Variable 3 1.0000000 1.00000000 1.0000000 1 1.0000000 0.007815042
#> Variable 4 1.0000000 1.00000000 0.2942234 1 1.0000000 1.000000000
#> Variable 5 1.0000000 0.48718579 0.4799077 1 1.0000000 1.000000000
#> Variable 13 Variable 14 Variable 15 Variable 16 Variable 17
#> Variable 1 0.0004273601 1.00000000 1.0000000 0.0001412975 1.0000000
#> Variable 2 0.7718375953 1.00000000 0.3093661 0.6372413032 1.0000000
#> Variable 3 1.0000000000 0.08792041 0.7938217 1.0000000000 0.3105395
#> Variable 4 0.0627557964 1.00000000 1.0000000 0.0570127587 0.5859141
#> Variable 5 0.0021479004 1.00000000 0.5493674 0.0024594999 1.0000000
#> Variable 18 Variable 19 Variable 20
#> Variable 1 0.023459999 0.0004800192 1.0000000000
#> Variable 2 0.153329449 0.0112386887 1.0000000000
#> Variable 3 0.347933259 1.0000000000 0.0002206222
#> Variable 4 0.005370888 1.0000000000 1.0000000000
#> Variable 5 0.021596368 0.0620635401 1.0000000000
#>