blob: 5d3d9620d24bf73ab2ecbed7e1ef04844d2f2cb7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
module OpenTox
class Feature
# Find out feature type
# Classification takes precedence
# @return [String] Feature type
def feature_type
if self[RDF.type].include?(RDF::OT.NominalFeature)
"classification"
elsif self[RDF.type].include?(RDF::OT.NumericFeature)
"regression"
else
"unknown"
end
end
# Get accept values
#
# @return[Array] Accept values
def accept_values
self[RDF::OT.acceptValue] ? self[RDF::OT.acceptValue].sort : nil
end
# Create value map
# @param [OpenTox::Feature] Feature
# @return [Hash] A hash with keys 1...feature.training_classes.size and values training classes
def value_map
unless defined? @value_map
accept_values ? @value_map = accept_values.each_index.inject({}) { |h,idx| h[idx+1]=accept_values[idx]; h } : @value_map = nil
end
@value_map
end
end
end
|