Class: CADFArray
- Inherits:
-
CAObject
- Object
- CAObject
- CADFArray
- Defined in:
- lib/carray/dataframe/dataframe.rb
Overview
CADFArray
Instance Attribute Summary collapse
-
#column_names ⇒ Object
readonly
Returns the value of attribute column_names.
Instance Method Summary collapse
- #copy_data(data) ⇒ Object
- #create_mask ⇒ Object
- #fetch_index(idx) ⇒ Object
-
#initialize(column_names, columns) ⇒ CADFArray
constructor
:nodoc:.
- #mask_copy_data(data) ⇒ Object
- #mask_fetch_index(idx) ⇒ Object
- #to_ca ⇒ Object
Constructor Details
#initialize(column_names, columns) ⇒ CADFArray
:nodoc:
1031 1032 1033 1034 1035 1036 1037 1038 |
# File 'lib/carray/dataframe/dataframe.rb', line 1031 def initialize (column_names, columns) @column_names = column_names @columns = columns dim = [@columns[@column_names.first].size, @column_names.size] extend CA::TableMethods super(:object, dim, :read_only=>true) __create_mask__ end |
Instance Attribute Details
#column_names ⇒ Object (readonly)
Returns the value of attribute column_names.
1040 1041 1042 |
# File 'lib/carray/dataframe/dataframe.rb', line 1040 def column_names @column_names end |
Instance Method Details
#copy_data(data) ⇒ Object
1048 1049 1050 1051 1052 |
# File 'lib/carray/dataframe/dataframe.rb', line 1048 def copy_data (data) @column_names.each_with_index do |name, i| data[nil,i] = @columns[name].value end end |
#create_mask ⇒ Object
1054 1055 |
# File 'lib/carray/dataframe/dataframe.rb', line 1054 def create_mask end |
#fetch_index(idx) ⇒ Object
1042 1043 1044 1045 1046 |
# File 'lib/carray/dataframe/dataframe.rb', line 1042 def fetch_index (idx) r, c = *idx name = @column_names[c] return @columns[name][r] end |
#mask_copy_data(data) ⇒ Object
1067 1068 1069 1070 1071 1072 1073 |
# File 'lib/carray/dataframe/dataframe.rb', line 1067 def mask_copy_data (data) @column_names.each_with_index do |name, i| if @columns[name].has_mask? data[nil,i] = @columns[name].mask end end end |
#mask_fetch_index(idx) ⇒ Object
1057 1058 1059 1060 1061 1062 1063 1064 1065 |
# File 'lib/carray/dataframe/dataframe.rb', line 1057 def mask_fetch_index (idx) r, c = *idx name = @column_names[c] if @columns[name].has_mask? return @columns[name].mask[r] else return 0 end end |
#to_ca ⇒ Object
1075 1076 1077 1078 1079 1080 |
# File 'lib/carray/dataframe/dataframe.rb', line 1075 def to_ca obj = super obj.extend CA::TableMethods obj.column_names = @column_names return obj end |