fdist 1.0.1 → 1.1.1
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/Gemfile +5 -1
- data/Gemfile.lock +59 -28
- data/Rakefile +29 -4
- data/VERSION +1 -1
- data/fdist.gemspec +19 -9
- data/lib/fdist.rb +14 -17
- metadata +60 -15
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: a70833b84a20dd91f598ec4dbaf4d4ad4b519b16
|
|
4
|
+
data.tar.gz: 55a50904dc563a33603bd39e671e24d6410e6428
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8ee372f6bab4926b8c084530c8da01f9c67f59cc3580355cea3c907704dc48f46c38ed98438d1e78a280fa36a95b365ffab5d875350713d192acfcf613287413
|
|
7
|
+
data.tar.gz: 93871fae77d3e502980dcee1d9ec36ecfb3696c899c1d44e4037e395acc8d696f9eb6812581ea8740a64c0afdb3c2aa3870750ec65d0159b7a002cd6e3ab728e
|
data/Gemfile
CHANGED
|
@@ -2,9 +2,13 @@ source "http://rubygems.org"
|
|
|
2
2
|
# Add dependencies required to use your gem here.
|
|
3
3
|
# Example:
|
|
4
4
|
# gem "activesupport", ">= 2.3.5"
|
|
5
|
+
|
|
5
6
|
# Add dependencies to develop your gem here.
|
|
6
7
|
# Include everything needed to run rake, tests, features, etc.
|
|
7
8
|
group :development do
|
|
9
|
+
gem "shoulda", ">= 0"
|
|
10
|
+
gem "rdoc", "~> 3.12"
|
|
8
11
|
gem "bundler", "~> 1.0"
|
|
9
|
-
gem "jeweler", "~>
|
|
12
|
+
gem "jeweler", "~> 2.0.1"
|
|
13
|
+
gem "simplecov", ">= 0"
|
|
10
14
|
end
|
data/Gemfile.lock
CHANGED
|
@@ -1,50 +1,81 @@
|
|
|
1
1
|
GEM
|
|
2
2
|
remote: http://rubygems.org/
|
|
3
3
|
specs:
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
activesupport (4.1.0)
|
|
5
|
+
i18n (~> 0.6, >= 0.6.9)
|
|
6
|
+
json (~> 1.7, >= 1.7.7)
|
|
7
|
+
minitest (~> 5.1)
|
|
8
|
+
thread_safe (~> 0.1)
|
|
9
|
+
tzinfo (~> 1.1)
|
|
10
|
+
addressable (2.3.6)
|
|
11
|
+
builder (3.2.2)
|
|
12
|
+
descendants_tracker (0.0.4)
|
|
13
|
+
thread_safe (~> 0.3, >= 0.3.1)
|
|
14
|
+
docile (1.1.3)
|
|
15
|
+
faraday (0.9.0)
|
|
16
|
+
multipart-post (>= 1.2, < 3)
|
|
8
17
|
git (1.2.6)
|
|
9
|
-
github_api (0.
|
|
10
|
-
addressable
|
|
11
|
-
|
|
18
|
+
github_api (0.11.3)
|
|
19
|
+
addressable (~> 2.3)
|
|
20
|
+
descendants_tracker (~> 0.0.1)
|
|
21
|
+
faraday (~> 0.8, < 0.10)
|
|
12
22
|
hashie (>= 1.2)
|
|
13
|
-
multi_json (
|
|
14
|
-
nokogiri (~> 1.
|
|
23
|
+
multi_json (>= 1.7.5, < 2.0)
|
|
24
|
+
nokogiri (~> 1.6.0)
|
|
15
25
|
oauth2
|
|
16
|
-
hashie (2.
|
|
17
|
-
highline (1.6.
|
|
18
|
-
|
|
19
|
-
jeweler (
|
|
26
|
+
hashie (2.1.1)
|
|
27
|
+
highline (1.6.21)
|
|
28
|
+
i18n (0.6.9)
|
|
29
|
+
jeweler (2.0.1)
|
|
20
30
|
builder
|
|
21
|
-
bundler (
|
|
31
|
+
bundler (>= 1.0)
|
|
22
32
|
git (>= 1.2.5)
|
|
23
|
-
github_api
|
|
33
|
+
github_api
|
|
24
34
|
highline (>= 1.6.15)
|
|
25
|
-
nokogiri (
|
|
35
|
+
nokogiri (>= 1.5.10)
|
|
26
36
|
rake
|
|
27
37
|
rdoc
|
|
28
|
-
|
|
38
|
+
json (1.8.1)
|
|
39
|
+
jwt (0.1.11)
|
|
29
40
|
multi_json (>= 1.5)
|
|
30
|
-
|
|
41
|
+
mini_portile (0.5.3)
|
|
42
|
+
minitest (5.3.3)
|
|
43
|
+
multi_json (1.9.2)
|
|
31
44
|
multi_xml (0.5.5)
|
|
32
|
-
multipart-post (
|
|
33
|
-
nokogiri (1.
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
jwt (~> 0.1.
|
|
38
|
-
multi_json (~> 1.
|
|
45
|
+
multipart-post (2.0.0)
|
|
46
|
+
nokogiri (1.6.1)
|
|
47
|
+
mini_portile (~> 0.5.0)
|
|
48
|
+
oauth2 (0.9.3)
|
|
49
|
+
faraday (>= 0.8, < 0.10)
|
|
50
|
+
jwt (~> 0.1.8)
|
|
51
|
+
multi_json (~> 1.3)
|
|
39
52
|
multi_xml (~> 0.5)
|
|
40
53
|
rack (~> 1.2)
|
|
41
54
|
rack (1.5.2)
|
|
42
|
-
rake (10.
|
|
43
|
-
rdoc (
|
|
55
|
+
rake (10.3.0)
|
|
56
|
+
rdoc (3.12.2)
|
|
57
|
+
json (~> 1.4)
|
|
58
|
+
shoulda (3.5.0)
|
|
59
|
+
shoulda-context (~> 1.0, >= 1.0.1)
|
|
60
|
+
shoulda-matchers (>= 1.4.1, < 3.0)
|
|
61
|
+
shoulda-context (1.2.1)
|
|
62
|
+
shoulda-matchers (2.6.0)
|
|
63
|
+
activesupport (>= 3.0.0)
|
|
64
|
+
simplecov (0.8.2)
|
|
65
|
+
docile (~> 1.1.0)
|
|
66
|
+
multi_json
|
|
67
|
+
simplecov-html (~> 0.8.0)
|
|
68
|
+
simplecov-html (0.8.0)
|
|
69
|
+
thread_safe (0.3.3)
|
|
70
|
+
tzinfo (1.1.0)
|
|
71
|
+
thread_safe (~> 0.1)
|
|
44
72
|
|
|
45
73
|
PLATFORMS
|
|
46
74
|
ruby
|
|
47
75
|
|
|
48
76
|
DEPENDENCIES
|
|
49
77
|
bundler (~> 1.0)
|
|
50
|
-
jeweler (~>
|
|
78
|
+
jeweler (~> 2.0.1)
|
|
79
|
+
rdoc (~> 3.12)
|
|
80
|
+
shoulda
|
|
81
|
+
simplecov
|
data/Rakefile
CHANGED
|
@@ -13,14 +13,39 @@ require 'rake'
|
|
|
13
13
|
|
|
14
14
|
require 'jeweler'
|
|
15
15
|
Jeweler::Tasks.new do |gem|
|
|
16
|
-
# gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
|
|
17
16
|
gem.name = "fdist"
|
|
18
17
|
gem.homepage = "http://github.com/gametheoretic/fdist"
|
|
19
18
|
gem.license = "MIT"
|
|
20
|
-
gem.summary = %Q{
|
|
21
|
-
gem.description = %Q{
|
|
19
|
+
gem.summary = %Q{Enumerable#fdist -- returns a freq. dist.}
|
|
20
|
+
gem.description = %Q{Given a block, Enumerable#fdist returns a frequency distribution of the results in the form of a Hash (sans block, distribution of raw element frequencies aka counts). Though one most often avoids imbuing a Hash w/ order-meaning, in this case the return Hash's pairs come ordered by frequency (i.e., the value side of the key-value pair).}
|
|
22
21
|
gem.email = "gametheoretic@gmail.com"
|
|
23
22
|
gem.authors = ["michael d. towle"]
|
|
24
|
-
|
|
23
|
+
gem.files.include "lib/**/*.rb"
|
|
25
24
|
end
|
|
25
|
+
|
|
26
26
|
Jeweler::RubygemsDotOrgTasks.new
|
|
27
|
+
|
|
28
|
+
require 'rake/testtask'
|
|
29
|
+
Rake::TestTask.new(:test) do |test|
|
|
30
|
+
test.libs << 'lib' << 'test'
|
|
31
|
+
test.pattern = 'test/**/test_*.rb'
|
|
32
|
+
test.verbose = true
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
desc "Code coverage detail"
|
|
36
|
+
task :simplecov do
|
|
37
|
+
ENV['COVERAGE'] = "true"
|
|
38
|
+
Rake::Task['test'].execute
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
task :default => :test
|
|
42
|
+
|
|
43
|
+
require 'rdoc/task'
|
|
44
|
+
Rake::RDocTask.new do |rdoc|
|
|
45
|
+
version = File.exist?('VERSION') ? File.read('VERSION') : ""
|
|
46
|
+
|
|
47
|
+
rdoc.rdoc_dir = 'rdoc'
|
|
48
|
+
rdoc.title = "temp #{version}"
|
|
49
|
+
rdoc.rdoc_files.include('README*')
|
|
50
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
|
51
|
+
end
|
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
1.
|
|
1
|
+
1.1.1
|
data/fdist.gemspec
CHANGED
|
@@ -2,15 +2,17 @@
|
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
|
3
3
|
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
|
4
4
|
# -*- encoding: utf-8 -*-
|
|
5
|
+
# stub: fdist 1.1.1 ruby lib
|
|
5
6
|
|
|
6
7
|
Gem::Specification.new do |s|
|
|
7
8
|
s.name = "fdist"
|
|
8
|
-
s.version = "1.
|
|
9
|
+
s.version = "1.1.1"
|
|
9
10
|
|
|
10
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
|
12
|
+
s.require_paths = ["lib"]
|
|
11
13
|
s.authors = ["michael d. towle"]
|
|
12
|
-
s.date = "
|
|
13
|
-
s.description = "
|
|
14
|
+
s.date = "2014-04-16"
|
|
15
|
+
s.description = "Given a block, Enumerable#fdist returns a frequency distribution of the results in the form of a Hash (sans block, distribution of raw element frequencies aka counts). Though one most often avoids imbuing a Hash w/ order-meaning, in this case the return Hash's pairs come ordered by frequency (i.e., the value side of the key-value pair)."
|
|
14
16
|
s.email = "gametheoretic@gmail.com"
|
|
15
17
|
s.extra_rdoc_files = [
|
|
16
18
|
"LICENSE.txt",
|
|
@@ -29,23 +31,31 @@ Gem::Specification.new do |s|
|
|
|
29
31
|
]
|
|
30
32
|
s.homepage = "http://github.com/gametheoretic/fdist"
|
|
31
33
|
s.licenses = ["MIT"]
|
|
32
|
-
s.
|
|
33
|
-
s.
|
|
34
|
-
s.summary = "quickie add-ons to the Array class"
|
|
34
|
+
s.rubygems_version = "2.2.2"
|
|
35
|
+
s.summary = "Enumerable#fdist -- returns a freq. dist."
|
|
35
36
|
|
|
36
37
|
if s.respond_to? :specification_version then
|
|
37
38
|
s.specification_version = 4
|
|
38
39
|
|
|
39
40
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
|
41
|
+
s.add_development_dependency(%q<shoulda>, [">= 0"])
|
|
42
|
+
s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
|
|
40
43
|
s.add_development_dependency(%q<bundler>, ["~> 1.0"])
|
|
41
|
-
s.add_development_dependency(%q<jeweler>, ["~>
|
|
44
|
+
s.add_development_dependency(%q<jeweler>, ["~> 2.0.1"])
|
|
45
|
+
s.add_development_dependency(%q<simplecov>, [">= 0"])
|
|
42
46
|
else
|
|
47
|
+
s.add_dependency(%q<shoulda>, [">= 0"])
|
|
48
|
+
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
|
43
49
|
s.add_dependency(%q<bundler>, ["~> 1.0"])
|
|
44
|
-
s.add_dependency(%q<jeweler>, ["~>
|
|
50
|
+
s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
|
|
51
|
+
s.add_dependency(%q<simplecov>, [">= 0"])
|
|
45
52
|
end
|
|
46
53
|
else
|
|
54
|
+
s.add_dependency(%q<shoulda>, [">= 0"])
|
|
55
|
+
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
|
47
56
|
s.add_dependency(%q<bundler>, ["~> 1.0"])
|
|
48
|
-
s.add_dependency(%q<jeweler>, ["~>
|
|
57
|
+
s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
|
|
58
|
+
s.add_dependency(%q<simplecov>, [">= 0"])
|
|
49
59
|
end
|
|
50
60
|
end
|
|
51
61
|
|
data/lib/fdist.rb
CHANGED
|
@@ -1,21 +1,18 @@
|
|
|
1
1
|
|
|
2
2
|
module Enumerable
|
|
3
|
-
def set_headers param_list
|
|
4
|
-
map! do |arr|
|
|
5
|
-
param_list.zip(arr).inject({}) do |result,zipped|
|
|
6
|
-
result[zipped.first] = zipped.last
|
|
7
|
-
result
|
|
8
|
-
end
|
|
9
|
-
end
|
|
10
|
-
end
|
|
11
3
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
4
|
+
# such that #fdist allows the user to select a slice off results off the top/bottom/whatever of the frequency distribution hash without conversion to- and from-Array type.
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
def fdist(valid_array_slice_arg=0..-1)
|
|
8
|
+
self.group_by do |elem|
|
|
9
|
+
block_given? ? yield(elem) : elem
|
|
10
|
+
end.to_a.map do |result, results_array|
|
|
11
|
+
[result, results_array.count]
|
|
12
|
+
end.sort_by do |result, frequency|
|
|
13
|
+
frequency
|
|
14
|
+
end[valid_array_slice_arg].to_h
|
|
20
15
|
end
|
|
21
|
-
end
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
|
metadata
CHANGED
|
@@ -1,45 +1,90 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: fdist
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.1.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- michael d. towle
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2014-04-16 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: shoulda
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - ">="
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: '0'
|
|
20
|
+
type: :development
|
|
21
|
+
prerelease: false
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - ">="
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: '0'
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: rdoc
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - "~>"
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: '3.12'
|
|
34
|
+
type: :development
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - "~>"
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: '3.12'
|
|
13
41
|
- !ruby/object:Gem::Dependency
|
|
14
42
|
name: bundler
|
|
15
43
|
requirement: !ruby/object:Gem::Requirement
|
|
16
44
|
requirements:
|
|
17
|
-
- - ~>
|
|
45
|
+
- - "~>"
|
|
18
46
|
- !ruby/object:Gem::Version
|
|
19
47
|
version: '1.0'
|
|
20
48
|
type: :development
|
|
21
49
|
prerelease: false
|
|
22
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
51
|
requirements:
|
|
24
|
-
- - ~>
|
|
52
|
+
- - "~>"
|
|
25
53
|
- !ruby/object:Gem::Version
|
|
26
54
|
version: '1.0'
|
|
27
55
|
- !ruby/object:Gem::Dependency
|
|
28
56
|
name: jeweler
|
|
29
57
|
requirement: !ruby/object:Gem::Requirement
|
|
30
58
|
requirements:
|
|
31
|
-
- - ~>
|
|
59
|
+
- - "~>"
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: 2.0.1
|
|
62
|
+
type: :development
|
|
63
|
+
prerelease: false
|
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
+
requirements:
|
|
66
|
+
- - "~>"
|
|
67
|
+
- !ruby/object:Gem::Version
|
|
68
|
+
version: 2.0.1
|
|
69
|
+
- !ruby/object:Gem::Dependency
|
|
70
|
+
name: simplecov
|
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
|
72
|
+
requirements:
|
|
73
|
+
- - ">="
|
|
32
74
|
- !ruby/object:Gem::Version
|
|
33
|
-
version:
|
|
75
|
+
version: '0'
|
|
34
76
|
type: :development
|
|
35
77
|
prerelease: false
|
|
36
78
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
79
|
requirements:
|
|
38
|
-
- -
|
|
80
|
+
- - ">="
|
|
39
81
|
- !ruby/object:Gem::Version
|
|
40
|
-
version:
|
|
41
|
-
description:
|
|
42
|
-
|
|
82
|
+
version: '0'
|
|
83
|
+
description: Given a block, Enumerable#fdist returns a frequency distribution of the
|
|
84
|
+
results in the form of a Hash (sans block, distribution of raw element frequencies
|
|
85
|
+
aka counts). Though one most often avoids imbuing a Hash w/ order-meaning, in this
|
|
86
|
+
case the return Hash's pairs come ordered by frequency (i.e., the value side of
|
|
87
|
+
the key-value pair).
|
|
43
88
|
email: gametheoretic@gmail.com
|
|
44
89
|
executables: []
|
|
45
90
|
extensions: []
|
|
@@ -47,7 +92,7 @@ extra_rdoc_files:
|
|
|
47
92
|
- LICENSE.txt
|
|
48
93
|
- README.rdoc
|
|
49
94
|
files:
|
|
50
|
-
- .document
|
|
95
|
+
- ".document"
|
|
51
96
|
- Gemfile
|
|
52
97
|
- Gemfile.lock
|
|
53
98
|
- LICENSE.txt
|
|
@@ -66,18 +111,18 @@ require_paths:
|
|
|
66
111
|
- lib
|
|
67
112
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
68
113
|
requirements:
|
|
69
|
-
- -
|
|
114
|
+
- - ">="
|
|
70
115
|
- !ruby/object:Gem::Version
|
|
71
116
|
version: '0'
|
|
72
117
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
73
118
|
requirements:
|
|
74
|
-
- -
|
|
119
|
+
- - ">="
|
|
75
120
|
- !ruby/object:Gem::Version
|
|
76
121
|
version: '0'
|
|
77
122
|
requirements: []
|
|
78
123
|
rubyforge_project:
|
|
79
|
-
rubygems_version: 2.
|
|
124
|
+
rubygems_version: 2.2.2
|
|
80
125
|
signing_key:
|
|
81
126
|
specification_version: 4
|
|
82
|
-
summary:
|
|
127
|
+
summary: Enumerable#fdist -- returns a freq. dist.
|
|
83
128
|
test_files: []
|