Class: Evoc::Rule

Inherits:
Object
  • Object
show all
Includes:
Comparable, InterestingnessMeasures, Logging
Defined in:
lib/evoc/rule.rb

Direct Known Subclasses

HyperRule

Constant Summary

Constants included from InterestingnessMeasures

InterestingnessMeasures::M_ADDED_VALUE_MAX, InterestingnessMeasures::M_ADDED_VALUE_MID, InterestingnessMeasures::M_ADDED_VALUE_MIN, InterestingnessMeasures::M_CAUSAL_CONFIDENCE_MAX, InterestingnessMeasures::M_CAUSAL_CONFIDENCE_MID, InterestingnessMeasures::M_CAUSAL_CONFIDENCE_MIN, InterestingnessMeasures::M_CAUSAL_SUPPORT_MAX, InterestingnessMeasures::M_CAUSAL_SUPPORT_MID, InterestingnessMeasures::M_CAUSAL_SUPPORT_MIN, InterestingnessMeasures::M_COLLECTIVE_STRENGTH_MAX, InterestingnessMeasures::M_COLLECTIVE_STRENGTH_MID, InterestingnessMeasures::M_COLLECTIVE_STRENGTH_MIN, InterestingnessMeasures::M_CONFIDENCE_MAX, InterestingnessMeasures::M_CONFIDENCE_MID, InterestingnessMeasures::M_CONFIDENCE_MIN, InterestingnessMeasures::M_CONVICTION_MAX, InterestingnessMeasures::M_CONVICTION_MID, InterestingnessMeasures::M_CONVICTION_MIN, InterestingnessMeasures::M_COSINE_MAX, InterestingnessMeasures::M_COSINE_MID, InterestingnessMeasures::M_COSINE_MIN, InterestingnessMeasures::M_COVERAGE_MAX, InterestingnessMeasures::M_COVERAGE_MID, InterestingnessMeasures::M_COVERAGE_MIN, InterestingnessMeasures::M_DESCRIPTIVE_CONFIRMED_CONFIDENCE_MAX, InterestingnessMeasures::M_DESCRIPTIVE_CONFIRMED_CONFIDENCE_MID, InterestingnessMeasures::M_DESCRIPTIVE_CONFIRMED_CONFIDENCE_MIN, InterestingnessMeasures::M_DIFFERENCE_OF_CONFIDENCE_MAX, InterestingnessMeasures::M_DIFFERENCE_OF_CONFIDENCE_MID, InterestingnessMeasures::M_DIFFERENCE_OF_CONFIDENCE_MIN, InterestingnessMeasures::M_EXAMPLE_AND_COUNTEREXAMPLE_RATE_MAX, InterestingnessMeasures::M_EXAMPLE_AND_COUNTEREXAMPLE_RATE_MID, InterestingnessMeasures::M_EXAMPLE_AND_COUNTEREXAMPLE_RATE_MIN, InterestingnessMeasures::M_GINI_INDEX_MAX, InterestingnessMeasures::M_GINI_INDEX_MID, InterestingnessMeasures::M_GINI_INDEX_MIN, InterestingnessMeasures::M_HYPER_COEFFICIENT_HYPER_MEASURE, InterestingnessMeasures::M_HYPER_COEFFICIENT_MAX, InterestingnessMeasures::M_HYPER_COEFFICIENT_MID, InterestingnessMeasures::M_HYPER_COEFFICIENT_MIN, InterestingnessMeasures::M_IMBALANCE_RATIO_MAX, InterestingnessMeasures::M_IMBALANCE_RATIO_MID, InterestingnessMeasures::M_IMBALANCE_RATIO_MIN, InterestingnessMeasures::M_INTERESTINGNESS_WEIGHTING_DEPENDENCY_MAX, InterestingnessMeasures::M_INTERESTINGNESS_WEIGHTING_DEPENDENCY_MID, InterestingnessMeasures::M_INTERESTINGNESS_WEIGHTING_DEPENDENCY_MIN, InterestingnessMeasures::M_JACCARD_MAX, InterestingnessMeasures::M_JACCARD_MID, InterestingnessMeasures::M_JACCARD_MIN, InterestingnessMeasures::M_J_MEASURE_MAX, InterestingnessMeasures::M_J_MEASURE_MID, InterestingnessMeasures::M_J_MEASURE_MIN, InterestingnessMeasures::M_KAPPA_MAX, InterestingnessMeasures::M_KAPPA_MID, InterestingnessMeasures::M_KAPPA_MIN, InterestingnessMeasures::M_KLOSGEN_MAX, InterestingnessMeasures::M_KLOSGEN_MID, InterestingnessMeasures::M_KLOSGEN_MIN, InterestingnessMeasures::M_KULCZYNSKI_MAX, InterestingnessMeasures::M_KULCZYNSKI_MID, InterestingnessMeasures::M_KULCZYNSKI_MIN, InterestingnessMeasures::M_LAPLACE_CORRECTED_CONFIDENCE_MAX, InterestingnessMeasures::M_LAPLACE_CORRECTED_CONFIDENCE_MID, InterestingnessMeasures::M_LAPLACE_CORRECTED_CONFIDENCE_MIN, InterestingnessMeasures::M_LEAST_CONTRADICTION_MAX, InterestingnessMeasures::M_LEAST_CONTRADICTION_MID, InterestingnessMeasures::M_LEAST_CONTRADICTION_MIN, InterestingnessMeasures::M_LEVERAGE_MAX, InterestingnessMeasures::M_LEVERAGE_MID, InterestingnessMeasures::M_LEVERAGE_MIN, InterestingnessMeasures::M_LIFT_MAX, InterestingnessMeasures::M_LIFT_MID, InterestingnessMeasures::M_LIFT_MIN, InterestingnessMeasures::M_LINEAR_CORRELATION_COEFFICIENT_MAX, InterestingnessMeasures::M_LINEAR_CORRELATION_COEFFICIENT_MID, InterestingnessMeasures::M_LINEAR_CORRELATION_COEFFICIENT_MIN, InterestingnessMeasures::M_LOEVINGER_MAX, InterestingnessMeasures::M_LOEVINGER_MID, InterestingnessMeasures::M_LOEVINGER_MIN, InterestingnessMeasures::M_ODDS_RATIO_MAX, InterestingnessMeasures::M_ODDS_RATIO_MID, InterestingnessMeasures::M_ODDS_RATIO_MIN, InterestingnessMeasures::M_ODD_MULTIPLIER_MAX, InterestingnessMeasures::M_ODD_MULTIPLIER_MID, InterestingnessMeasures::M_ODD_MULTIPLIER_MIN, InterestingnessMeasures::M_ONE_WAY_SUPPORT_MAX, InterestingnessMeasures::M_ONE_WAY_SUPPORT_MID, InterestingnessMeasures::M_ONE_WAY_SUPPORT_MIN, InterestingnessMeasures::M_PIATETSKY_SHAPIRO_MAX, InterestingnessMeasures::M_PIATETSKY_SHAPIRO_MID, InterestingnessMeasures::M_PIATETSKY_SHAPIRO_MIN, InterestingnessMeasures::M_PREVALENCE_MAX, InterestingnessMeasures::M_PREVALENCE_MID, InterestingnessMeasures::M_PREVALENCE_MIN, InterestingnessMeasures::M_RECALL_MAX, InterestingnessMeasures::M_RECALL_MID, InterestingnessMeasures::M_RECALL_MIN, InterestingnessMeasures::M_RELATIVE_RISK_MAX, InterestingnessMeasures::M_RELATIVE_RISK_MID, InterestingnessMeasures::M_RELATIVE_RISK_MIN, InterestingnessMeasures::M_SEBAG_SCHOENAUER_MAX, InterestingnessMeasures::M_SEBAG_SCHOENAUER_MID, InterestingnessMeasures::M_SEBAG_SCHOENAUER_MIN, InterestingnessMeasures::M_SPECIFICITY_MAX, InterestingnessMeasures::M_SPECIFICITY_MID, InterestingnessMeasures::M_SPECIFICITY_MIN, InterestingnessMeasures::M_SUPPORT_MAX, InterestingnessMeasures::M_SUPPORT_MID, InterestingnessMeasures::M_SUPPORT_MIN, InterestingnessMeasures::M_TWO_WAY_SUPPORT_MAX, InterestingnessMeasures::M_TWO_WAY_SUPPORT_MID, InterestingnessMeasures::M_TWO_WAY_SUPPORT_MIN, InterestingnessMeasures::M_VARYING_RATES_LIAISON_MAX, InterestingnessMeasures::M_VARYING_RATES_LIAISON_MID, InterestingnessMeasures::M_VARYING_RATES_LIAISON_MIN, InterestingnessMeasures::M_YULES_Q_MAX, InterestingnessMeasures::M_YULES_Q_MID, InterestingnessMeasures::M_YULES_Q_MIN, InterestingnessMeasures::M_YULES_Y_MAX, InterestingnessMeasures::M_YULES_Y_MID, InterestingnessMeasures::M_YULES_Y_MIN, InterestingnessMeasures::M_ZHANG_MAX, InterestingnessMeasures::M_ZHANG_MID, InterestingnessMeasures::M_ZHANG_MIN, InterestingnessMeasures::VALUE_TYPE

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from InterestingnessMeasures

get_max, #get_measure, get_mid, get_min, #get_p, #get_p_values, hyper_measures, included, #instantiated_measures, is_hyper_measure?, #m_added_value, #m_causal_confidence, #m_causal_support, #m_collective_strength, #m_confidence, #m_conviction, #m_cosine, #m_coverage, #m_descriptive_confirmed_confidence, #m_difference_of_confidence, #m_example_and_counterexample_rate, #m_gini_index, #m_hyper_coefficient, #m_imbalance_ratio, #m_interestingness_weighting_dependency, #m_j_measure, #m_jaccard, #m_kappa, #m_klosgen, #m_kulczynski, #m_laplace_corrected_confidence, #m_least_contradiction, #m_leverage, #m_lift, #m_linear_correlation_coefficient, #m_loevinger, #m_odd_multiplier, #m_odds_ratio, #m_one_way_support, #m_piatetsky_shapiro, #m_prevalence, #m_recall, #m_relative_risk, #m_sebag_schoenauer, #m_specificity, #m_support, #m_two_way_support, #m_varying_rates_liaison, #m_yules_q, #m_yules_y, #m_zhang, #measure_instantiated?, measures, #n, #p_A, #p_AB, #p_A_notB, #p_AgivenB, #p_AgivennotB, #p_AorB, #p_B, #p_BgivenA, #p_BgivennotA, #p_notA, #p_notA_B, #p_notA_notB, #p_notAgivenB, #p_notAgivennotB, #p_notB, #p_notBgivenA, #p_notBgivennotA, #set_measure, #set_p, #to_a

Methods included from Logging

configure_logger_for, #logger, logger_for, set_level

Constructor Details

#initialize(lhs:, rhs:, tx_store: nil, **measures) ⇒ Rule

Returns a new instance of Rule.



6
7
8
9
10
11
12
13
14
# File 'lib/evoc/rule.rb', line 6

def initialize(lhs:,rhs:,tx_store: nil,**measures)
  self.lhs = lhs.is_a?(Array) ? lhs.sort : [lhs]
  self.rhs = rhs.is_a?(Array) ? rhs.sort : [rhs]
  self.name = "#{self.lhs.join(",")} -> #{self.rhs.join(",")}" 
  self.tx_store = tx_store
  measures.each do |measure,value|
    set_measure(measure,value)
  end
end

Instance Attribute Details

#human_lhsObject

Returns the value of attribute human_lhs.



4
5
6
# File 'lib/evoc/rule.rb', line 4

def human_lhs
  @human_lhs
end

#human_rhsObject

Returns the value of attribute human_rhs.



4
5
6
# File 'lib/evoc/rule.rb', line 4

def human_rhs
  @human_rhs
end

#lhsObject

Returns the value of attribute lhs.



4
5
6
# File 'lib/evoc/rule.rb', line 4

def lhs
  @lhs
end

#nameObject

Returns the value of attribute name.



4
5
6
# File 'lib/evoc/rule.rb', line 4

def name
  @name
end

#rhsObject

Returns the value of attribute rhs.



4
5
6
# File 'lib/evoc/rule.rb', line 4

def rhs
  @rhs
end

#tx_storeObject

Returns the value of attribute tx_store.



4
5
6
# File 'lib/evoc/rule.rb', line 4

def tx_store
  @tx_store
end

Instance Method Details

#<=>(other) ⇒ Object



16
17
18
# File 'lib/evoc/rule.rb', line 16

def <=> other
 other.name <=> self.name
end

#human_nameObject



24
25
26
# File 'lib/evoc/rule.rb', line 24

def human_name
  "#{human_lhs} -> #{human_rhs}"
end

#to_sObject



20
21
22
# File 'lib/evoc/rule.rb', line 20

def to_s
  name
end