module Savanna::Outliers::Grubbs
Public Instance Methods
grubbs_one_sided_test(n = size, alpha = 0.05)
click to toggle source
# File lib/savanna-outliers/grubbs.rb, line 23 def grubbs_one_sided_test(n = size, alpha = 0.05) a = (n - 1)/Math.sqrt(n) t = Statistics2.ptdist(n-2,alpha/n)**2 b = Math.sqrt( t/(n-2+t) ) a*b end
grubbs_test_statistic()
click to toggle source
# File lib/savanna-outliers/grubbs.rb, line 4 def grubbs_test_statistic array.map{|el| (el - mean).abs}.max/standard_deviation end
grubbs_test_statistic_maximum()
click to toggle source
# File lib/savanna-outliers/grubbs.rb, line 8 def grubbs_test_statistic_maximum (array.max - mean)/standard_deviation end
grubbs_test_statistic_minimum()
click to toggle source
# File lib/savanna-outliers/grubbs.rb, line 12 def grubbs_test_statistic_minimum (mean - array.min)/standard_deviation end
grubbs_two_sided_test(n = size, alpha = 0.05)
click to toggle source
# File lib/savanna-outliers/grubbs.rb, line 16 def grubbs_two_sided_test(n = size, alpha = 0.05) a = (n - 1)/Math.sqrt(n) t = Statistics2.ptdist(n-2,alpha/(2*n))**2 b = Math.sqrt( t/(n-2+t) ) a*b end
max_outlier_grubbs?()
click to toggle source
# File lib/savanna-outliers/grubbs.rb, line 34 def max_outlier_grubbs? @max_outliers_grubbs ||= grubbs_test_statistic_maximum > grubbs_one_sided_test end
min_outlier_grubbs?()
click to toggle source
# File lib/savanna-outliers/grubbs.rb, line 38 def min_outlier_grubbs? @min_outliers_grubbs ||= grubbs_test_statistic_minimum > grubbs_one_sided_test end
outliers_grubbs?()
click to toggle source
# File lib/savanna-outliers/grubbs.rb, line 30 def outliers_grubbs? @outliers_grubbs ||= grubbs_test_statistic > grubbs_two_sided_test end