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.000000000 0.4270677 0.4781955 -0.004511278 0.58045113
#> Variable 2 0.427067669 1.0000000 0.8661654 0.354887218 0.14586466
#> Variable 3 0.478195489 0.8661654 1.0000000 0.530827068 0.30827068
#> Variable 4 -0.004511278 0.3548872 0.5308271 1.000000000 0.07969925
#> Variable 5 0.580451128 0.1458647 0.3082707 0.079699248 1.00000000
#> Variable 6 0.703759398 0.4721805 0.6827068 0.317293233 0.75639098
#> Variable 7 0.494736842 0.6150376 0.6796992 0.218045113 0.19699248
#> Variable 8 0.257142857 0.7443609 0.6962406 0.478195489 0.31278195
#> Variable 9 0.932330827 0.3413534 0.4105263 -0.019548872 0.75939850
#> Variable 10 0.634586466 0.5969925 0.7473684 0.305263158 0.24511278
#> Variable 11 -0.433082707 -0.4060150 -0.6571429 -0.424060150 -0.50676692
#> Variable 12 -0.496240602 -0.6360902 -0.7037594 -0.189473684 -0.71729323
#> Variable 13 -0.679699248 -0.5533835 -0.4526316 -0.302255639 -0.57443609
#> Variable 14 -0.228571429 -0.2030075 -0.3699248 -0.187969925 -0.37293233
#> Variable 15 -0.445112782 -0.3699248 -0.5879699 -0.445112782 -0.47669173
#> Variable 16 -0.436090226 -0.4090226 -0.6781955 -0.484210526 -0.57593985
#> Variable 17 -0.470676692 -0.5984962 -0.6586466 -0.550375940 -0.61353383
#> Variable 18 -0.166917293 -0.4135338 -0.3954887 -0.227067669 -0.23609023
#> Variable 19 -0.520300752 -0.5007519 -0.5864662 -0.309774436 -0.52030075
#> Variable 20 -0.481203008 -0.8751880 -0.7503759 -0.130827068 -0.32631579
#> Variable 6 Variable 7 Variable 8 Variable 9 Variable 10
#> Variable 1 0.7037594 0.4947368 0.2571429 0.93233083 0.6345865
#> Variable 2 0.4721805 0.6150376 0.7443609 0.34135338 0.5969925
#> Variable 3 0.6827068 0.6796992 0.6962406 0.41052632 0.7473684
#> Variable 4 0.3172932 0.2180451 0.4781955 -0.01954887 0.3052632
#> Variable 5 0.7563910 0.1969925 0.3127820 0.75939850 0.2451128
#> Variable 6 1.0000000 0.5037594 0.5939850 0.67669173 0.6135338
#> Variable 7 0.5037594 1.0000000 0.6315789 0.33082707 0.9218045
#> Variable 8 0.5939850 0.6315789 1.0000000 0.20451128 0.5548872
#> Variable 9 0.6766917 0.3308271 0.2045113 1.00000000 0.4691729
#> Variable 10 0.6135338 0.9218045 0.5548872 0.46917293 1.0000000
#> Variable 11 -0.6721805 -0.7082707 -0.5714286 -0.43609023 -0.7413534
#> Variable 12 -0.7714286 -0.4751880 -0.6556391 -0.57894737 -0.4496241
#> Variable 13 -0.6887218 -0.3654135 -0.6045113 -0.63909774 -0.3639098
#> Variable 14 -0.2300752 -0.5969925 -0.1398496 -0.27819549 -0.5278195
#> Variable 15 -0.6751880 -0.7413534 -0.5669173 -0.40000000 -0.7458647
#> Variable 16 -0.5699248 -0.4932331 -0.3984962 -0.55037594 -0.5729323
#> Variable 17 -0.8390977 -0.4075188 -0.8180451 -0.46616541 -0.4345865
#> Variable 18 -0.5428571 -0.4947368 -0.6240602 -0.01654135 -0.4060150
#> Variable 19 -0.5774436 -0.7127820 -0.5879699 -0.54285714 -0.6947368
#> Variable 20 -0.5518797 -0.5864662 -0.7894737 -0.44210526 -0.5172932
#> Variable 11 Variable 12 Variable 13 Variable 14 Variable 15
#> Variable 1 -0.4330827 -0.4962406 -0.67969925 -0.22857143 -0.4451128
#> Variable 2 -0.4060150 -0.6360902 -0.55338346 -0.20300752 -0.3699248
#> Variable 3 -0.6571429 -0.7037594 -0.45263158 -0.36992481 -0.5879699
#> Variable 4 -0.4240602 -0.1894737 -0.30225564 -0.18796992 -0.4451128
#> Variable 5 -0.5067669 -0.7172932 -0.57443609 -0.37293233 -0.4766917
#> Variable 6 -0.6721805 -0.7714286 -0.68872180 -0.23007519 -0.6751880
#> Variable 7 -0.7082707 -0.4751880 -0.36541353 -0.59699248 -0.7413534
#> Variable 8 -0.5714286 -0.6556391 -0.60451128 -0.13984962 -0.5669173
#> Variable 9 -0.4360902 -0.5789474 -0.63909774 -0.27819549 -0.4000000
#> Variable 10 -0.7413534 -0.4496241 -0.36390977 -0.52781955 -0.7458647
#> Variable 11 1.0000000 0.6947368 0.35639098 0.54285714 0.9037594
#> Variable 12 0.6947368 1.0000000 0.60751880 0.31127820 0.6390977
#> Variable 13 0.3563910 0.6075188 1.00000000 0.05714286 0.4300752
#> Variable 14 0.5428571 0.3112782 0.05714286 1.00000000 0.5714286
#> Variable 15 0.9037594 0.6390977 0.43007519 0.57142857 1.0000000
#> Variable 16 0.8060150 0.6796992 0.25864662 0.65864662 0.7458647
#> Variable 17 0.5864662 0.7714286 0.82406015 0.05413534 0.6285714
#> Variable 18 0.4451128 0.4120301 0.52030075 0.07819549 0.4165414
#> Variable 19 0.9142857 0.7428571 0.50977444 0.52481203 0.8616541
#> Variable 20 0.4827068 0.7894737 0.64962406 0.10075188 0.4045113
#> Variable 16 Variable 17 Variable 18 Variable 19 Variable 20
#> Variable 1 -0.43609023 -0.47067669 -0.16691729 -0.5203008 -0.4812030
#> Variable 2 -0.40902256 -0.59849624 -0.41353383 -0.5007519 -0.8751880
#> Variable 3 -0.67819549 -0.65864662 -0.39548872 -0.5864662 -0.7503759
#> Variable 4 -0.48421053 -0.55037594 -0.22706767 -0.3097744 -0.1308271
#> Variable 5 -0.57593985 -0.61353383 -0.23609023 -0.5203008 -0.3263158
#> Variable 6 -0.56992481 -0.83909774 -0.54285714 -0.5774436 -0.5518797
#> Variable 7 -0.49323308 -0.40751880 -0.49473684 -0.7127820 -0.5864662
#> Variable 8 -0.39849624 -0.81804511 -0.62406015 -0.5879699 -0.7894737
#> Variable 9 -0.55037594 -0.46616541 -0.01654135 -0.5428571 -0.4421053
#> Variable 10 -0.57293233 -0.43458647 -0.40601504 -0.6947368 -0.5172932
#> Variable 11 0.80601504 0.58646617 0.44511278 0.9142857 0.4827068
#> Variable 12 0.67969925 0.77142857 0.41203008 0.7428571 0.7894737
#> Variable 13 0.25864662 0.82406015 0.52030075 0.5097744 0.6496241
#> Variable 14 0.65864662 0.05413534 0.07819549 0.5248120 0.1007519
#> Variable 15 0.74586466 0.62857143 0.41654135 0.8616541 0.4045113
#> Variable 16 1.00000000 0.47819549 -0.01353383 0.7503759 0.3849624
#> Variable 17 0.47819549 1.00000000 0.59248120 0.5909774 0.6796992
#> Variable 18 -0.01353383 0.59248120 1.00000000 0.3774436 0.4646617
#> Variable 19 0.75037594 0.59097744 0.37744361 1.0000000 0.6060150
#> Variable 20 0.38496241 0.67969925 0.46466165 0.6060150 1.0000000
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.50495472 0.3586205 0.6474325 0.5212440 0.6287340 0.6280787
#> Variable 2 0.23077387 0.6257726 0.5424296 0.5466259 0.5306180 0.4143801
#> Variable 3 0.35482942 0.7026754 0.6521221 0.5050458 0.3964983 0.6600913
#> Variable 4 0.61259505 0.5073410 0.6350883 0.4448300 0.3087261 0.7071880
#> Variable 5 -0.06921779 0.3530233 0.5187837 0.7605679 0.3154778 0.3303458
#> Variable 7 Variable 8 Variable 9 Variable 10 Variable 11 Variable 12
#> Variable 1 0.6347607 0.3527741 0.6048126 0.6885036 -0.8952286 -0.6274758
#> Variable 2 0.4197417 0.8179810 0.2987174 0.2462277 -0.3479642 -0.6281493
#> Variable 3 0.4726728 0.8177646 0.3334965 0.4579800 -0.5611594 -0.7431660
#> Variable 4 0.7331339 0.4748698 0.4231314 0.7821653 -0.4364526 -0.4023812
#> Variable 5 0.3540349 0.4016269 0.0226847 0.3437754 -0.5674470 -0.2957376
#> Variable 13 Variable 14 Variable 15 Variable 16 Variable 17
#> Variable 1 -0.2876503 -0.75781095 -0.7872777 -0.8672263 -0.4542764
#> Variable 2 -0.5747597 -0.35813388 -0.4638598 -0.6070965 -0.6977010
#> Variable 3 -0.7752252 0.01038233 -0.5727827 -0.3642902 -0.8573339
#> Variable 4 -0.4324180 -0.45713532 -0.5694518 -0.3895827 -0.5518176
#> Variable 5 -0.3387231 -0.62684325 -0.5384341 -0.6104933 -0.4585292
#> Variable 18 Variable 19 Variable 20
#> Variable 1 -0.2496856 -0.7587078 -0.3600116
#> Variable 2 -0.2413356 -0.5234932 -0.7059837
#> Variable 3 -0.6817455 -0.6544484 -0.7694327
#> Variable 4 -0.5551278 -0.3280818 -0.4626496
#> Variable 5 -0.5068263 -0.5212329 -0.1058697
#>
#> $p.value
#> Variable 1 Variable 2 Variable 3 Variable 4 Variable 5 Variable 6
#> Variable 1 1.0000000 1.00000000 0.2028276 1.000000000 0.2984106 0.30234253
#> Variable 2 1.0000000 0.31652515 1.0000000 1.000000000 1.0000000 1.00000000
#> Variable 3 1.0000000 0.05503616 0.1833767 1.000000000 1.0000000 0.15390735
#> Variable 4 0.4085919 1.00000000 0.2624382 1.000000000 1.0000000 0.04885373
#> Variable 5 1.0000000 1.00000000 1.0000000 0.009907297 1.0000000 1.00000000
#> Variable 7 Variable 8 Variable 9 Variable 10 Variable 11
#> Variable 1 0.26419992 1.000000000 0.4726716 0.078946128 9.822971e-06
#> Variable 2 1.00000000 0.001053627 1.0000000 1.000000000 1.000000e+00
#> Variable 3 1.00000000 0.001064057 1.0000000 1.000000000 1.000000e+00
#> Variable 4 0.02355446 1.000000000 1.0000000 0.004610408 1.000000e+00
#> Variable 5 1.00000000 1.000000000 1.0000000 1.000000000 9.067018e-01
#> Variable 12 Variable 13 Variable 14 Variable 15 Variable 16
#> Variable 1 0.30599864 1.000000000 0.01086224 0.003799137 7.447519e-05
#> Variable 2 0.30191706 0.802897407 1.00000000 1.000000000 4.530615e-01
#> Variable 3 0.01737335 0.005948183 1.00000000 0.829951813 1.000000e+00
#> Variable 4 1.00000000 1.000000000 1.00000000 0.877214812 1.000000e+00
#> Variable 5 1.00000000 1.000000000 0.30987351 1.000000000 4.251428e-01
#> Variable 17 Variable 18 Variable 19 Variable 20
#> Variable 1 1.0000000000 1.00000000 0.0105433 1.000000000
#> Variable 2 0.0626084648 1.00000000 1.0000000 0.050442837
#> Variable 3 0.0001369264 0.09313087 0.1743236 0.007308687
#> Variable 4 1.0000000000 1.00000000 1.0000000 1.000000000
#> Variable 5 1.0000000000 1.00000000 1.0000000 1.000000000
#>