class Spout::Models::OutlierResult

Attributes

csv_files[R]
display_name[R]
major_outliers[R]
median[R]
method[R]
minor_outliers[R]
outliers[R]
units[R]
variable_type[R]
weight[R]

Public Class Methods

new(subjects, method, csv_files) click to toggle source
# File lib/spout/models/outlier_result.rb, line 13
def initialize(subjects, method, csv_files)
  @values = subjects.collect(&method.to_sym)
  @csv_files = csv_files
  @method = method
  calculate_outliers!
  @weight = \
    if @major_outliers.count > 0
      0
    elsif @minor_outliers.count > 0
      1
    else
      2
    end
  variable = Spout::Helpers::JsonLoader::get_variable(method)
  @units = (variable.is_a?(Hash) ? variable["units"] : nil)
  @display_name = (variable.is_a?(Hash) ? variable["display_name"] : nil)
  @variable_type = (variable.is_a?(Hash) ? variable["type"] : nil)
  @median = @values.median
end

Public Instance Methods

calculate_outliers!() click to toggle source
# File lib/spout/models/outlier_result.rb, line 33
def calculate_outliers!
  @major_outliers = @values.major_outliers.uniq
  @minor_outliers = @values.minor_outliers.uniq
  @outliers = @values.outliers.uniq
end