Class: Daru::IO::SqlDataSource

Inherits:
Object
  • Object
show all
Defined in:
lib/daru/io/sql_data_source.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(db, query) ⇒ SqlDataSource

Returns a new instance of SqlDataSource.



65
66
67
# File 'lib/daru/io/sql_data_source.rb', line 65

def initialize(db, query)
  @adapter = init_adapter(db, query)
end

Class Method Details

.make_dataframe(db, query) ⇒ Object



61
62
63
# File 'lib/daru/io/sql_data_source.rb', line 61

def self.make_dataframe(db, query)
  new(db, query).make_dataframe
end

Instance Method Details

#make_dataframeObject



69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# File 'lib/daru/io/sql_data_source.rb', line 69

def make_dataframe
  vectors = {}
  fields = []
  @adapter.each_column_name do |column_name|
    vectors[column_name] = Daru::Vector.new([])
    vectors[column_name].rename column_name
    fields.push column_name
  end

  df = Daru::DataFrame.new(vectors, order: fields)
  @adapter.each_row do |row|
    df.add_row(row)
  end

  df.update

  df
end