Class: Remi::Parser::DataFrame

Inherits:
Remi::Parser show all
Defined in:
lib/remi/data_subjects/data_frame.rb

Overview

DataFrame parser. In order for the DataFrame::Extractor to be parsed correctly, fields must be defined on the data subject.

Examples:


class MyJob < Remi::Job
  source :my_df do
    fields ({ id: {}, name: {}})
    extractor Remi::Extractor::DataFrame.new(
      data: [
        [1, 'Albert'],
        [2, 'Betsy'],
        [3, 'Camu']
      ]
    )
    parser Remi::Parser::DataFrame.new
  end
end

job = MyJob.new
job.my_df.df.inspect
# =>#<Daru::DataFrame:70153153438500 @name = 4c59cfdd-7de7-4264-8666-83153f46a9e4 @size = 3>
#                    id       name
#          0          1     Albert
#          1          2      Betsy
#          2          3       Camu

Instance Attribute Summary

Attributes inherited from Remi::Parser

#context, #field_symbolizer, #fields, #logger

Instance Method Summary collapse

Methods inherited from Remi::Parser

#initialize

Constructor Details

This class inherits a constructor from Remi::Parser

Instance Method Details

#parse(df_extract) ⇒ Remi::DataFrame

Returns The data converted into a dataframe.

Parameters:

Returns:



82
83
84
# File 'lib/remi/data_subjects/data_frame.rb', line 82

def parse(df_extract)
  Remi::DataFrame.create(:daru, df_extract.data.transpose, order: fields.keys)
end