Class: Daru::Accessors::ArrayWrapper
- Inherits:
-
Object
- Object
- Daru::Accessors::ArrayWrapper
show all
- Includes:
- Statistics, Enumerable
- Defined in:
- lib/daru/accessors/array_wrapper.rb
Overview
Internal class for wrapping ruby array
Defined Under Namespace
Modules: Statistics
Instance Attribute Summary collapse
Instance Method Summary
collapse
Methods included from Statistics
#average_deviation_population, #coefficient_of_variation, #count, #factors, #frequencies, #has_missing_data?, #kurtosis, #max, #mean, #median, #median_absolute_deviation, #min, #mode, #n_valid, #percentile, #product, #proportion, #proportions, #range, #ranked, #recode, #recode!, #skew, #standard_deviation_population, #standard_deviation_sample, #standard_error, #sum, #sum_of_squared_deviation, #sum_of_squares, #variance_population, #variance_sample
Constructor Details
#initialize(vector, caller) ⇒ ArrayWrapper
Returns a new instance of ArrayWrapper.
189
190
191
192
193
194
|
# File 'lib/daru/accessors/array_wrapper.rb', line 189
def initialize vector, caller
@vector = vector
@caller = caller
set_size
end
|
Instance Attribute Details
#has_missing_data ⇒ Object
Returns the value of attribute has_missing_data.
187
188
189
|
# File 'lib/daru/accessors/array_wrapper.rb', line 187
def has_missing_data
@has_missing_data
end
|
#size ⇒ Object
Returns the value of attribute size.
185
186
187
|
# File 'lib/daru/accessors/array_wrapper.rb', line 185
def size
@size
end
|
#vector ⇒ Object
Returns the value of attribute vector.
186
187
188
|
# File 'lib/daru/accessors/array_wrapper.rb', line 186
def vector
@vector
end
|
Instance Method Details
#<<(element) ⇒ Object
219
220
221
222
|
# File 'lib/daru/accessors/array_wrapper.rb', line 219
def << element
@vector << element
set_size
end
|
#==(other) ⇒ Object
206
207
208
|
# File 'lib/daru/accessors/array_wrapper.rb', line 206
def == other
@vector == other
end
|
#[](index) ⇒ Object
196
197
198
|
# File 'lib/daru/accessors/array_wrapper.rb', line 196
def [] index
@vector[index]
end
|
#[]=(index, value) ⇒ Object
200
201
202
203
204
|
# File 'lib/daru/accessors/array_wrapper.rb', line 200
def []= index, value
has_missing_data = true if value.nil?
@vector[index] = value
set_size
end
|
#coerce(dtype) ⇒ Object
236
237
238
239
240
241
242
243
244
245
246
247
|
# File 'lib/daru/accessors/array_wrapper.rb', line 236
def coerce dtype
case
when dtype == Array
self
when dtype == NMatrix
Daru::Accessors::NMatrixWrapper.new @vector, @caller
when dtype == MDArray
raise NotImplementedError
else
raise ArgumentError, "Cant coerce to dtype #{dtype}"
end
end
|
#delete_at(index) ⇒ Object
210
211
212
213
|
# File 'lib/daru/accessors/array_wrapper.rb', line 210
def delete_at index
@vector.delete_at index
set_size
end
|
#dup ⇒ Object
232
233
234
|
# File 'lib/daru/accessors/array_wrapper.rb', line 232
def dup
ArrayWrapper.new @vector.dup, @caller
end
|
#each(&block) ⇒ Object
177
178
179
|
# File 'lib/daru/accessors/array_wrapper.rb', line 177
def each(&block)
@vector.each(&block)
end
|
#index(key) ⇒ Object
215
216
217
|
# File 'lib/daru/accessors/array_wrapper.rb', line 215
def index key
@vector.index key
end
|
#map!(&block) ⇒ Object
181
182
183
|
# File 'lib/daru/accessors/array_wrapper.rb', line 181
def map!(&block)
@vector.map!(&block)
end
|
#to_a ⇒ Object
228
229
230
|
# File 'lib/daru/accessors/array_wrapper.rb', line 228
def to_a
@vector
end
|
#uniq ⇒ Object
224
225
226
|
# File 'lib/daru/accessors/array_wrapper.rb', line 224
def uniq
@vector.uniq
end
|