The Statistics section of the Boost Math library cover a broad range of areas
# Mean
mean_boost(c(1, 2, 3, 4, 5))
#> [1] 3
# Variance
variance(c(1, 2, 3, 4, 5))
#> [1] 2
# Sample Variance
sample_variance(c(1, 2, 3, 4, 5))
#> [1] 2.5
# Mean and Sample Variance
mean_and_sample_variance(c(1, 2, 3, 4, 5))
#> [1] 3.0 2.5
# Skewness
skewness(c(1, 2, 3, 4, 5))
#> [1] 0
# Kurtosis
kurtosis(c(1, 2, 3, 4, 5))
#> [1] 1.7
# Excess Kurtosis
excess_kurtosis(c(1, 2, 3, 4, 5))
#> [1] -1.3
# First Four Moments
first_four_moments(c(1, 2, 3, 4, 5))
#> [1] 3.0 2.0 0.0 6.8
# Median
median_boost(c(1, 2, 3, 4, 5))
#> [1] 3
# Median Absolute Deviation
median_absolute_deviation(c(1, 2, 3, 4, 5))
#> [1] 1
# Interquartile Range
interquartile_range(c(1, 2, 3, 4, 5))
#> [1] 3
# Gini Coefficient
gini_coefficient(c(1, 2, 3, 4, 5))
#> [1] 0.2666667
# Sample Gini Coefficient
sample_gini_coefficient(c(1, 2, 3, 4, 5))
#> [1] 0.3333333
# Mode
mode_boost(c(1, 2, 2, 3, 4))
#> [1] 2
# Absolute Gini Coefficient
absolute_gini_coefficient(c(1, 2, 3, 4, 5))
#> [1] 0.2666667
# Sample Absolute Gini Coefficient
sample_absolute_gini_coefficient(c(1, 2, 3, 4, 5))
#> [1] 0.3333333
# Hoyer Sparsity
hoyer_sparsity(c(1, 0, 0, 2, 3))
#> [1] 0.5117037
noisy_signal <- c(1.1, 2.1, 3.1)
# Oracle SNR
oracle_snr(c(1, 2, 3), c(1.1, 2.1, 3.1))
#> [1] 466.6667
# Oracle SNR in dB
oracle_snr_db(c(1, 2, 3), c(1.1, 2.1, 3.1))
#> [1] 26.69007
# M2M4 SNR Estimator in dB
m2m4_snr_estimator(c(1.1, 2.1, 3.1), 3, 2)
#> [1] NaN
# M2M4 SNR Estimator in dB
m2m4_snr_estimator_db(c(1.1, 2.1, 3.1), 3, 2)
#> [1] NaN
# One Sample T-Test with parameters
one_sample_t_test_params(sample_mean = 2, sample_variance = 1, num_samples = 30, assumed_mean = 0)
#> [1] 1.095445e+01 8.021287e-12
# One Sample T-Test
one_sample_t_test(c(1, 2, 3, 4, 5), assumed_mean = 0)
#> [1] 4.2426407 0.0132356
# Two Sample T-Test
two_sample_t_test(c(1, 2, 3), c(4, 5, 6))
#> [1] -3.67423461 0.02131164
# Paired Samples T-Test
paired_samples_t_test(c(1, 2, 3), c(4, 5, 6))
#> [1] -Inf 0
# One Sample Z-Test with parameters
one_sample_z_test_params(sample_mean = 2, sample_variance = 1, num_samples = 30, assumed_mean = 0)
#> [1] 1.095445e+01 8.021287e-12
# One Sample Z-Test
one_sample_z_test(c(1, 2, 3, 4, 5), assumed_mean = 0)
#> [1] 4.2426407 0.0132356
# Two Sample ZTest
two_sample_z_test(c(1, 2, 3), c(4, 5, 6))
#> [1] -3.67423461 0.02131164