Class: Predicate
- Inherits:
-
Object
- Object
- Predicate
- Defined in:
- lib/predicate.rb
Instance Attribute Summary collapse
-
#decision ⇒ Object
readonly
Returns the value of attribute decision.
Instance Method Summary collapse
- #field ⇒ Object
-
#initialize(pred_xml) ⇒ Predicate
constructor
A new instance of Predicate.
- #missing_feature?(features) ⇒ Boolean
- #nil_feature?(features) ⇒ Boolean
- #to_s ⇒ Object
- #true?(features) ⇒ Boolean
Constructor Details
#initialize(pred_xml) ⇒ Predicate
Returns a new instance of Predicate.
8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/predicate.rb', line 8 def initialize(pred_xml) @pred_xml = pred_xml.xpath('*')[0] @op = @pred_xml.xpath('@operator').to_s @bool_op = @pred_xml.xpath('@booleanOperator').to_s if !@op.empty? @pred = NumericalPredicate.new(@pred_xml) elsif !@bool_op.empty? @pred = CategoricalPredicate.new(@pred_xml) end @decision = pred_xml.xpath('@score').to_s end |
Instance Attribute Details
#decision ⇒ Object (readonly)
Returns the value of attribute decision.
6 7 8 |
# File 'lib/predicate.rb', line 6 def decision @decision end |
Instance Method Details
#field ⇒ Object
27 28 29 |
# File 'lib/predicate.rb', line 27 def field @pred.field end |
#missing_feature?(features) ⇒ Boolean
38 39 40 41 42 |
# File 'lib/predicate.rb', line 38 def missing_feature?(features) return false if features.has_key? field RandomForester.logger.error "Missing feature #{field}" true end |
#nil_feature?(features) ⇒ Boolean
44 45 46 47 48 |
# File 'lib/predicate.rb', line 44 def nil_feature?(features) return false unless features[field].nil? RandomForester.logger.error "Feature #{field} value is nil" true end |
#to_s ⇒ Object
23 24 25 |
# File 'lib/predicate.rb', line 23 def to_s @pred_xml.to_s end |
#true?(features) ⇒ Boolean
31 32 33 34 35 36 |
# File 'lib/predicate.rb', line 31 def true?(features) return true if @pred.nil? return if missing_feature?(features) return if nil_feature?(features) @pred.true?(features) end |