rover-df 0.3.1 → 0.3.2
Sign up to get free protection for your applications and to get access to all the features.
- 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
|