rover-df 0.3.1 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/README.md +1 -1
- data/lib/rover/vector.rb +20 -6
- data/lib/rover/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 44146e3081c968813848026d2a7f785527a0bb55af0a1978a8087d0dcc7a568a
|
4
|
+
data.tar.gz: db64041059937e131d27799739506ad27a78d19be3bdd90d299bcee855b54755
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f66190d43258016bc54da2ee42078087784e2c245095fceced4f617b4343130c8e324fd07a4fb0a08b6e23f512268d517e330087959dd7a78187228383189ea8
|
7
|
+
data.tar.gz: a1d3a80ff866d72dc32a0067240c32f7a24c602a736d932dba394af8b760566591ff0d2942a61243230016182a3a5fad2e635fa1095f809caf477146d0810868
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
data/lib/rover/vector.rb
CHANGED
@@ -184,13 +184,9 @@ module Rover
|
|
184
184
|
Vector.new(@data.to_a.reject(&block))
|
185
185
|
end
|
186
186
|
|
187
|
+
# use Ruby tally for performance
|
187
188
|
def tally
|
188
|
-
|
189
|
-
@data.each do |v|
|
190
|
-
result[v] += 1
|
191
|
-
end
|
192
|
-
result.default = nil
|
193
|
-
result
|
189
|
+
@data.to_a.tally
|
194
190
|
end
|
195
191
|
|
196
192
|
def sort
|
@@ -201,6 +197,16 @@ module Rover
|
|
201
197
|
Vector.new(@data.abs)
|
202
198
|
end
|
203
199
|
|
200
|
+
def sqrt
|
201
|
+
data =
|
202
|
+
if @data.is_a?(Numo::SFloat)
|
203
|
+
Numo::SFloat::Math.sqrt(@data)
|
204
|
+
else
|
205
|
+
Numo::DFloat::Math.sqrt(@data)
|
206
|
+
end
|
207
|
+
Vector.new(data)
|
208
|
+
end
|
209
|
+
|
204
210
|
def each(&block)
|
205
211
|
@data.each(&block)
|
206
212
|
end
|
@@ -350,6 +356,14 @@ module Rover
|
|
350
356
|
super
|
351
357
|
end
|
352
358
|
|
359
|
+
def coerce(other)
|
360
|
+
if other.is_a?(Numeric)
|
361
|
+
[Vector.new([other]), self]
|
362
|
+
else
|
363
|
+
raise TypeError, "#{self.class} can't be coerced into #{other.class}"
|
364
|
+
end
|
365
|
+
end
|
366
|
+
|
353
367
|
def cast_data(data, type: nil)
|
354
368
|
numo_type = numo_type(type) if type
|
355
369
|
|
data/lib/rover/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rover-df
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Kane
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-07-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: numo-narray
|