red_amber 0.4.1 → 0.5.0

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.
data/docker/Dockerfile ADDED
@@ -0,0 +1,66 @@
1
+ # x86-64/Ubuntu-22.04/python-3.10.9/lab-3.6.1/notebook-6.5.3/2023-03-13
2
+ ARG BASE_IMAGE_TAG=295612d3ade4
3
+
4
+ FROM jupyter/minimal-notebook:$BASE_IMAGE_TAG
5
+
6
+ USER root
7
+
8
+ RUN set -eux; \
9
+ apt update; \
10
+ apt install -y --no-install-recommends \
11
+ curl \
12
+ \
13
+ # For Apache Arrow
14
+ ca-certificates \
15
+ lsb-release \
16
+ \
17
+ # Ruby 3.0.2
18
+ ruby-dev \
19
+ \
20
+ # For iruby
21
+ libczmq-dev \
22
+ libzmq3-dev
23
+
24
+ # Apache Arrow
25
+ ARG ARROW_DEB_TMP=/tmp/apache-arrow-apt-source-latest.deb
26
+
27
+ RUN set -eux; \
28
+ apt update; \
29
+ curl -sfSL -o ${ARROW_DEB_TMP} \
30
+ https://apache.jfrog.io/artifactory/arrow/$(lsb_release --id --short | tr 'A-Z' 'a-z')/apache-arrow-apt-source-latest-$(lsb_release --codename --short).deb; \
31
+ apt install -y --no-install-recommends \
32
+ ${ARROW_DEB_TMP}; \
33
+ rm -f ${ARROW_DEB_TMP}; \
34
+ apt update; \
35
+ apt install -y \
36
+ libarrow-dev \
37
+ libarrow-glib-dev \
38
+ libparquet-dev \
39
+ libparquet-glib-dev \
40
+ libgirepository1.0-dev; \
41
+ rm -rf /var/lib/apt/lists/*
42
+
43
+ USER $NB_UID
44
+
45
+ WORKDIR $HOME
46
+
47
+ ENV PATH $HOME/.local/share/gem/bin:$HOME/.local/share/gem/ruby/3.0.0/bin:$PATH
48
+
49
+ # IRuby
50
+ RUN set -eux; \
51
+ gem install --user-install \
52
+ rake \
53
+ bundler \
54
+ iruby; \
55
+ iruby register --force
56
+
57
+ COPY --chown=$NB_UID:$NB_GID Gemfile $HOME
58
+ COPY --chown=$NB_UID:$NB_GID Gemfile.lock $HOME
59
+
60
+ ENV GEM_HOME=$HOME/.local/share/gem
61
+ ENV BUNDLE_PATH=$HOME/.local/share/gem
62
+ ENV BUNDLE_BIN=$HOME/.local/share/gem/bin
63
+
64
+ RUN bundle install --jobs=4
65
+
66
+ COPY --chown=$NB_UID:$NB_GID example $HOME
data/docker/Gemfile ADDED
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gem 'irb'
6
+
7
+ gem 'numo-narray'
8
+ gem 'red-arrow', '~> 12.0.0'
9
+ gem 'red-arrow-numo-narray'
10
+ gem 'red-parquet', '~> 12.0.0'
11
+
12
+ gem 'red_amber', path: '../'
13
+ gem 'red-amber-view'
14
+ gem 'rover-df'
15
+
16
+ gem 'red-datasets'
17
+ gem 'red-datasets-arrow'
18
+
19
+ gem 'benchmark_driver'
20
+ gem 'benchmark-ips'
21
+
22
+ gem 'charty'
23
+ gem 'faker'
24
+ gem 'matplotlib'
25
+ gem 'pycall'
26
+ gem 'unicode_plot'
@@ -0,0 +1,118 @@
1
+ PATH
2
+ remote: ..
3
+ specs:
4
+ red_amber (0.5.0.pre.HEAD)
5
+ red-arrow (~> 12.0.0)
6
+
7
+ GEM
8
+ remote: https://rubygems.org/
9
+ specs:
10
+ benchmark-ips (2.12.0)
11
+ benchmark_driver (0.16.3)
12
+ bigdecimal (3.1.4)
13
+ charty (0.2.12)
14
+ matplotlib (>= 1.2.0)
15
+ pandas (>= 0.3.5)
16
+ playwright-ruby-client
17
+ red-colors (>= 0.3.0)
18
+ red-datasets (>= 0.1.2)
19
+ red-palette (>= 0.5.0)
20
+ concurrent-ruby (1.2.2)
21
+ csv (3.2.6)
22
+ enumerable-statistics (2.0.7)
23
+ extpp (0.1.1)
24
+ faker (3.1.1)
25
+ i18n (>= 1.8.11, < 2)
26
+ fiddle (1.1.1)
27
+ gio2 (4.1.4)
28
+ fiddle
29
+ gobject-introspection (= 4.1.4)
30
+ glib2 (4.1.4)
31
+ native-package-installer (>= 1.0.3)
32
+ pkg-config (>= 1.3.5)
33
+ gobject-introspection (4.1.4)
34
+ glib2 (= 4.1.4)
35
+ i18n (1.12.0)
36
+ concurrent-ruby (~> 1.0)
37
+ io-console (0.6.0)
38
+ irb (1.6.4)
39
+ reline (>= 0.3.0)
40
+ libui (0.0.15)
41
+ matplotlib (1.3.0)
42
+ pycall (>= 1.0.0)
43
+ matrix (0.4.2)
44
+ mime-types (3.4.1)
45
+ mime-types-data (~> 3.2015)
46
+ mime-types-data (3.2023.0218.1)
47
+ native-package-installer (1.1.5)
48
+ numo-narray (0.9.2.1)
49
+ numpy (0.4.0)
50
+ pycall (>= 1.2.0.beta1)
51
+ pandas (0.3.8)
52
+ numpy
53
+ pycall (>= 1.0.0)
54
+ pkg-config (1.5.1)
55
+ playwright-ruby-client (1.31.1)
56
+ concurrent-ruby (>= 1.1.6)
57
+ mime-types (>= 3.0)
58
+ pycall (1.4.2)
59
+ red-amber-view (0.0.1)
60
+ libui
61
+ red-arrow
62
+ red_amber
63
+ red-arrow (12.0.0)
64
+ bigdecimal (>= 3.1.0)
65
+ extpp (>= 0.1.1)
66
+ gio2 (>= 3.5.0)
67
+ native-package-installer
68
+ pkg-config
69
+ red-arrow-numo-narray (0.0.6)
70
+ numo-narray
71
+ red-arrow
72
+ red-colors (0.3.0)
73
+ matrix
74
+ red-datasets (0.1.5)
75
+ csv (>= 3.2.4)
76
+ rexml
77
+ rubyzip
78
+ red-datasets-arrow (0.0.3)
79
+ red-arrow
80
+ red-datasets (>= 0.0.3)
81
+ red-palette (0.5.0)
82
+ red-colors (>= 0.3.0)
83
+ red-parquet (12.0.0)
84
+ red-arrow (= 12.0.0)
85
+ reline (0.3.3)
86
+ io-console (~> 0.5)
87
+ rexml (3.2.5)
88
+ rover-df (0.3.4)
89
+ numo-narray (>= 0.9.1.9)
90
+ rubyzip (2.3.2)
91
+ unicode_plot (0.0.5)
92
+ enumerable-statistics (>= 2.0.1)
93
+
94
+ PLATFORMS
95
+ x86_64-darwin-20
96
+ x86_64-linux
97
+
98
+ DEPENDENCIES
99
+ benchmark-ips
100
+ benchmark_driver
101
+ charty
102
+ faker
103
+ irb
104
+ matplotlib
105
+ numo-narray
106
+ pycall
107
+ red-amber-view
108
+ red-arrow (~> 12.0.0)
109
+ red-arrow-numo-narray
110
+ red-datasets
111
+ red-datasets-arrow
112
+ red-parquet (~> 12.0.0)
113
+ red_amber!
114
+ rover-df
115
+ unicode_plot
116
+
117
+ BUNDLED WITH
118
+ 2.4.12
@@ -0,0 +1,21 @@
1
+ version: '3'
2
+
3
+ services:
4
+ minimal-redamber:
5
+ build:
6
+ context: .
7
+ dockerfile: Dockerfile
8
+ image: red_amber-minimal-notebook
9
+ container_name: red_amber-minimal-notebook
10
+ user: root
11
+ environment:
12
+ - GRANT_SUDO=yes
13
+ - NB_USER=$NB_USER
14
+ - CHOWN_HOME=yes
15
+ - TZ=$TZ
16
+ working_dir: /home/$NB_USER/work
17
+ ports:
18
+ - '8888:8888'
19
+ volumes:
20
+ - ./notebook:/home/$NB_USER/work
21
+ command: start-notebook.sh --NotebookApp.token=$TOKEN
data/docker/example ADDED
@@ -0,0 +1,86 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ print "starting.\r"
5
+
6
+ Dir.chdir(__dir__) { require 'bundler/setup' }
7
+
8
+ print "starting..\r"
9
+ require 'red_amber'
10
+ include RedAmber
11
+
12
+ print "starting...\r"
13
+ require 'datasets-arrow'
14
+
15
+ print "reading penguins...\r"
16
+ penguins = DataFrame.new(Datasets::Penguins.new)
17
+
18
+ print "reading diamonds...\r"
19
+ diamonds = DataFrame.new(Datasets::Diamonds.new)
20
+
21
+ print "reading starwars...\r"
22
+ starwars = DataFrame.new(Datasets::Rdataset.new('dplyr', 'starwars'))
23
+
24
+ print "reading openintro/simpsons_paradox_covid...\r"
25
+ ds = Datasets::Rdataset.new('openintro', 'simpsons_paradox_covid')
26
+ simpsons_paradox_covid = DataFrame.new(ds.to_arrow)
27
+
28
+ print "reading mtcars... \r"
29
+ mtcars = DataFrame.new(Datasets::Rdatasets.new('datasets', 'mtcars'))
30
+
31
+ print "reading iris... \r"
32
+ iris = DataFrame.new(Datasets::Iris.new)
33
+
34
+ print "reading band_members...\r"
35
+ band_members = DataFrame.new(Datasets::Rdatasets.new('dplyr', 'band_members'))
36
+
37
+ print "reading band_instruments...\r"
38
+ band_instruments = DataFrame.new(Datasets::Rdatasets.new('dplyr', 'band_instruments'))
39
+
40
+ print "reading band_instruments2...\r"
41
+ band_instruments2 = DataFrame.new(Datasets::Rdatasets.new('dplyr', 'band_instruments2'))
42
+
43
+ print "reading import_cars... \r"
44
+ import_cars = DataFrame.load(Arrow::Buffer.new(<<~TSV), format: :tsv)
45
+ Year Audi BMW BMW_MINI Mercedes-Benz VW
46
+ 2017 28336 52527 25427 68221 49040
47
+ 2018 26473 50982 25984 67554 51961
48
+ 2019 24222 46814 23813 66553 46794
49
+ 2020 22304 35712 20196 57041 36576
50
+ 2021 22535 35905 18211 51722 35215
51
+ TSV
52
+
53
+ print "reading comecome... \r"
54
+ comecome = DataFrame.load(Arrow::Buffer.new(<<~CSV), format: :csv)
55
+ name,age
56
+ Yasuko,68
57
+ Rui,49
58
+ Hinata,28
59
+ CSV
60
+
61
+ print "reading rubykaigi... \r"
62
+ rubykaigi = DataFrame.load(Arrow::Buffer.new(<<~CSV), format: :csv)
63
+ year,venue,prefecture,city,venue_en
64
+ 2015,ベルサール汐留,東京都,中央区,"Bellesalle Shiodome"
65
+ 2016,京都国際会議場,京都府,京都市左京区,"Kyoto International Conference Center"
66
+ 2017,広島国際会議場,広島県,広島市中区,"International Conference Center Hiroshima"
67
+ 2018,仙台国際センター,宮城県,仙台市青葉区,"Sendai International Center"
68
+ 2019,福岡国際会議場,福岡県,福岡市博多区,"Fukuoka International Congress Center"
69
+ 2022,三重県総合文化センター,三重県,津市,"Mie Center for the Arts"
70
+ 2023,松本市民芸術館,長野県,松本市,"Matsumoto Performing Arts Centre"
71
+ CSV
72
+
73
+ print "reading general dataframe and subframes...\r"
74
+ dataframe = DataFrame.new(
75
+ x: [*1..6],
76
+ y: %w[A A B B B C],
77
+ z: [false, true, false, nil, true, false]
78
+ )
79
+ subframes = SubFrames.new(dataframe, [[0, 1], [2, 3, 4], [5]])
80
+
81
+ # Welcome to RedAmber example!
82
+ # This environment will offer these pre-loaded datasets:
83
+ # penguins, diamonds, iris, starwars, simpsons_paradox_covid,
84
+ # mtcars, band_members, band_instruments, band_instruments2
85
+ # import_cars, comecome, rubykaigi, dataframe, subframes
86
+ binding.irb