class RubyBrain::TrainingDataManipulator
Attributes
columns[RW]
Public Class Methods
new(data_file, has_header)
click to toggle source
# File lib/ruby_brain/training_data_manipulator.rb, line 6 def initialize(data_file, has_header) puts data_file @columns = [] @raw_data = parse_data(data_file, has_header) end
Public Instance Methods
ix(*col_index)
click to toggle source
# File lib/ruby_brain/training_data_manipulator.rb, line 24 def ix(*col_index) @raw_data.map do |a_set| a_set.values_at(*col_index).map(&:to_f) end end
num_data_sets()
click to toggle source
# File lib/ruby_brain/training_data_manipulator.rb, line 30 def num_data_sets @raw_data.length end
parse_data(data_file, has_header)
click to toggle source
# File lib/ruby_brain/training_data_manipulator.rb, line 12 def parse_data(data_file, has_header) array_of_data_set = [] File.open(data_file) do |f| @columns = f.readline.chomp.split(',') if has_header f.each_line do |line| next if /\A\s+\z/ =~ line array_of_data_set << line.chomp.split(',') end end array_of_data_set end