Class: NexosisApi::DatasetColumn

Inherits:
Object
  • Object
show all
Defined in:
lib/nexosis_api/dataset_column.rb

Overview

class to hold the parsed results of a dataset column

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(column_name, value_hash) ⇒ DatasetColumn

Returns a new instance of DatasetColumn.


4
5
6
7
8
# File 'lib/nexosis_api/dataset_column.rb', line 4

def initialize(column_name, value_hash)
    @name = column_name
    @type = NexosisApi::ColumnType.const_get(value_hash["dataType"].upcase) unless value_hash["dataType"].nil?
    @role = NexosisApi::ColumnRole.const_get(value_hash["role"].upcase) unless value_hash["role"].nil?
end

Instance Attribute Details

#nameString

The column header, label, or name

Returns:

  • (String)

11
12
13
# File 'lib/nexosis_api/dataset_column.rb', line 11

def name
  @name
end

#roleNexosisApi::ColumnRole

Note:

Either none, timestamp, target, or feature

The role of this column


22
23
24
# File 'lib/nexosis_api/dataset_column.rb', line 22

def role
  @role
end

#typeNexosisApi::ColumnType

Note:

Either string, numeric, logical, or date

The data type of this column


17
18
19
# File 'lib/nexosis_api/dataset_column.rb', line 17

def type
  @type
end

Class Method Details

.to_json(column_array) ⇒ Object


29
30
31
32
33
# File 'lib/nexosis_api/dataset_column.rb', line 29

def self.to_json(column_array)
    result = {}
    column_array.each {|col| result[col.to_hash.keys[0]] = col.to_hash.values[0] } 
    result
end

Instance Method Details

#to_hashObject

utility method to format a column description in the way it is expected on input


25
26
27
# File 'lib/nexosis_api/dataset_column.rb', line 25

def to_hash
    { self.name => { "dataType" => self.type.to_s, "role" => self.role.to_s }} 
end