A package dedicated to running multiple statistical hypothesis tests on rows and columns of matrices.
- Fast execution via vectorization.
- Convenient and detailed output format.
- Compatibility with tests implemented in base R.
- Careful handling of missing values and edge cases.
Bartlett's test on every column of iris dataset using Species as groups:
col_bartlett(iris[,-5], iris$Species) obs.tot obs.groups var.pooled df statistic pvalue
Sepal.Length 150 3 0.26500816 2 16.005702 0.0003345076070163084
Sepal.Width 150 3 0.11538776 2 2.091075 0.3515028004158132768
Petal.Length 150 3 0.18518776 2 55.422503 0.0000000000009229038
Petal.Width 150 3 0.04188163 2 39.213114 0.0000000030547839322
Welch t-test performed on each row of 2 large (million row) matrices:
X <- matrix(rnorm(10000000), ncol = 10)
Y <- matrix(rnorm(10000000), ncol = 10)
row_t_welch(X, Y) # running time: 2.4 secondsConfidence interval computations can be turned-off for further increase in speed:
row_t_welch(X, Y, conf.level = NA) # running time: 1 second| Variant | Name | Function |
|---|---|---|
| Location tests (1 group) | Single sample Student's t.test | row_t_onesample |
| Single sample Wilcoxon's test | row_wilcoxon_onesample |
|
| Location tests (2 groups) | Equal variance Student's t.test | row_t_equalvar |
| Welch adjusted Student's t.test | row_t_welch |
|
| Two sample Wilcoxon's test | row_wilcoxon_twosample |
|
| Location tests (paired) | Paired Student's t.test | row_t_paired |
| Paired Wilcoxon's test | row_wilcoxon_paired |
|
| Location tests (2+ groups) | Equal variance oneway anova | row_oneway_equalvar |
| Welch's oneway anova | row_oneway_welch |
|
| Kruskal-Wallis test | row_kruskalwallis |
|
| van der Waerden's test | row_waerden |
|
| Scale tests (2 groups) | F variance test | row_f_var |
| Scale tests (2+ groups) | Bartlett's test | row_bartlett |
| Fligner-Killeen test | row_flignerkilleen |
|
| Levene's test | row_levene |
|
| Brown-Forsythe test | row_brownforsythe |
|
| Association tests | Pearson's correlation test | row_cor_pearson |
| Periodicity tests | Cosinor | row_cosinor |
| Distribution tests | Kolmogorov-Smirnov test | row_kolmogorovsmirnov_twosample |
| Normality tests | Jarque-Bera test | row_jarquebera |
| Anderson-Darling test | row_andersondarling |
For more information please refer to the Wiki page:
Computing thousands of test statistics simultaneously in R, Holger Schwender, Tina Müller.
Statistical Computing & Graphics. Volume 18, No 1, June 2007.
CRAN:
ttests()in the Rfast package.row.ttest.stat()in the metaMA package.MultiTtest()in the ClassComparison package.bartlettTests()in the heplots package.harmonic.regression()in the HarmonicRegression package.
BioConductor:
lmFit()in the limma package.rowttests()in the genefilter package.mt.teststat()in the multtest package.row.T.test()in the HybridMTest package.rowTtest()in the viper package.lmPerGene()in the GSEAlm package.
GitHub:
