class Newral::Data::Csv

Public Class Methods

new( file_name: nil, output_fields: 1 ) click to toggle source
Calls superclass method Newral::Data::Base::new
# File lib/newral/data/csv.rb, line 6
def initialize( file_name: nil, output_fields: 1 )
  @file_name = file_name
  @output_fields = output_fields
  super( inputs: [], outputs: [])
end

Public Instance Methods

process() click to toggle source
# File lib/newral/data/csv.rb, line 12
def process
  open( @file_name ) do |file|
    file.each_line do |line|
      input = CSV.parse_line( line ).collect{ |field| field.match(/^\d*\.?\d+$/) ? field.to_f : field }
      add_input( input.slice(0,input.size-1-@output_fields), output: input.slice(input.size-@output_fields, input.size ))
    end
  end
end