rover-df 0.2.4 → 0.2.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/README.md +1 -1
- data/lib/rover/data_frame.rb +16 -1
- data/lib/rover/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ca39a558c3c12103f03fed4cb8f007fbd00a1f8e84b839916fd0010aae4613ba
|
4
|
+
data.tar.gz: 43df8cdc415cc036ac383f30b7c91a35b644067a3cb8ea199abd7452b98298d5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2724c7e85ee7921f277be833cf89be638c14cbb37a44411bba86c42cacffe7c0e4b82ea04d4dfb3d694c6429ba41bc8e8c10f7cb40e5d34bf59d14755858735f
|
7
|
+
data.tar.gz: fa860158decbca0a0b35ccb82e6f73d9a513c37b483eca52d140842d5dd255899a2e1ded3ec4375a492b86d3ec09ffa53d4871e05f1fdad39f3d2630215417dc
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -20,7 +20,7 @@ gem 'rover-df'
|
|
20
20
|
|
21
21
|
A data frame is an in-memory table. It’s a useful data structure for data analysis and machine learning. It uses columnar storage for fast operations on columns.
|
22
22
|
|
23
|
-
Try it out for forecasting by clicking the button below:
|
23
|
+
Try it out for forecasting by clicking the button below (it can take a few minutes to start):
|
24
24
|
|
25
25
|
[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/ankane/ml-stack/master?filepath=Forecasting.ipynb)
|
26
26
|
|
data/lib/rover/data_frame.rb
CHANGED
@@ -475,10 +475,12 @@ module Rover
|
|
475
475
|
|
476
476
|
left = how == "left"
|
477
477
|
|
478
|
+
types = {}
|
478
479
|
vectors = {}
|
479
480
|
keys = (self.keys + other.keys).uniq
|
480
481
|
keys.each do |k|
|
481
482
|
vectors[k] = []
|
483
|
+
types[k] = join_type(self.types[k], other.types[k])
|
482
484
|
end
|
483
485
|
|
484
486
|
each_row do |r|
|
@@ -498,7 +500,7 @@ module Rover
|
|
498
500
|
end
|
499
501
|
end
|
500
502
|
|
501
|
-
DataFrame.new(vectors)
|
503
|
+
DataFrame.new(vectors, types: types)
|
502
504
|
end
|
503
505
|
|
504
506
|
def check_join_keys(df, keys)
|
@@ -523,6 +525,19 @@ module Rover
|
|
523
525
|
end
|
524
526
|
end
|
525
527
|
|
528
|
+
def join_type(a, b)
|
529
|
+
if a.nil?
|
530
|
+
b
|
531
|
+
elsif b.nil?
|
532
|
+
a
|
533
|
+
elsif a == b
|
534
|
+
a
|
535
|
+
else
|
536
|
+
# TODO specify
|
537
|
+
nil
|
538
|
+
end
|
539
|
+
end
|
540
|
+
|
526
541
|
def to_vector(v, size: nil, type: nil)
|
527
542
|
if v.is_a?(Vector)
|
528
543
|
v = v.to(type) if type && v.type != type
|
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.2.
|
4
|
+
version: 0.2.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Kane
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-09-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: numo-narray
|
@@ -58,7 +58,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
58
58
|
- !ruby/object:Gem::Version
|
59
59
|
version: '0'
|
60
60
|
requirements: []
|
61
|
-
rubygems_version: 3.2.
|
61
|
+
rubygems_version: 3.2.22
|
62
62
|
signing_key:
|
63
63
|
specification_version: 4
|
64
64
|
summary: Simple, powerful data frames for Ruby
|