collaborative_filtering 0.4.0 → 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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2563b6359c2e498b01606de2b93c4e8bd0046b28
4
- data.tar.gz: 6b69fc156365194dadd5f65f931256be5e07e092
3
+ metadata.gz: d07a5619548e3e8ae7cae53f3a2e0ca22ccd7a47
4
+ data.tar.gz: e000e343323ac5ef43b1d700d10a4edea0216aca
5
5
  SHA512:
6
- metadata.gz: 9b9e100226091d5d2a6980703ae9f18ce99ee4140c29a73dd4310a79980826197e0438845b060c78610e22d32ed689555cc72843d4fa0ea2b49f51cdff8d9815
7
- data.tar.gz: 0ec7e87bd82cc37a0e582baf530f8e54a6f4491b731649d5e7d750bd392c046a3972427b1b51130d3bebf813285b64ad12a31c9931e3bbb0bfb1a4cf9538ce68
6
+ metadata.gz: c0ccbcdfa040ba66a47cfbd8896873114588998fbd0cdc45025c142c82df90b590f9eef014283edd719941b9ed29ebfbee56f2bc91afea9c2c2096a5aab0002c
7
+ data.tar.gz: c1478a1de189160a79a43ccd1f91b7032f6fb4c4ea827cb9e5ccbba56a903f8b475ad7a77d753a4b7398ea727ef275131d640b33db990e3de360e01d9675d7f0
data/.travis.yml CHANGED
@@ -1,3 +1,6 @@
1
1
  language: ruby
2
2
  rvm:
3
+ - 2.0.0
3
4
  - 2.2.2
5
+ sudo: false
6
+ cache: bundler
@@ -0,0 +1,100 @@
1
+ module CollaborativeFiltering::Sample
2
+ class << self
3
+ SAMPLE = {
4
+ 'Yamada' => {
5
+ 'Curry' => 2.5,
6
+ 'Ramen' => 3.5,
7
+ 'Fried rice' => 3.0,
8
+ 'Sushi' => 3.5,
9
+ 'Beef bowl' => 2.5,
10
+ 'Wheat noodle' => 3.0
11
+ },
12
+ 'Tanaka' => {
13
+ 'Curry' => 3.0,
14
+ 'Ramen' => 3.5,
15
+ 'Fried rice' => 1.5,
16
+ 'Sushi' => 5.0,
17
+ 'Wheat noodle' => 3.0,
18
+ 'Beef bowl' => 3.5
19
+ },
20
+ 'Sato' => {
21
+ 'Curry' => 2.5,
22
+ 'Ramen' => 3.0,
23
+ 'Sushi' => 3.5,
24
+ 'Wheat noodle' => 4.0
25
+ },
26
+ 'Nakamura' => {
27
+ 'Ramen' => 3.5,
28
+ 'Fried rice' => 3.0,
29
+ 'Wheat noodle' => 4.5,
30
+ 'Sushi' => 4.0,
31
+ 'Beef bowl' => 2.5
32
+ },
33
+ 'Kawamura' => {
34
+ 'Curry' => 3.0,
35
+ 'Ramen' => 4.0,
36
+ 'Fried rice' => 2.0,
37
+ 'Sushi' => 3.0,
38
+ 'Wheat noodle' => 3.0,
39
+ 'Beef bowl' => 2.0
40
+ },
41
+ 'Suzuki' => {
42
+ 'Curry' => 3.0,
43
+ 'Ramen' => 4.0,
44
+ 'Wheat noodle' => 3.0,
45
+ 'Sushi' => 5.0,
46
+ 'Beef bowl' => 3.5
47
+ },
48
+ 'Shimobayashi' => {
49
+ 'Ramen' => 4.5,
50
+ 'Beef bowl' => 1.0,
51
+ 'Sushi' => 4.0
52
+ }
53
+ }
54
+
55
+ def show_sample_data
56
+ p SAMPLE
57
+ end
58
+
59
+ def all_sample
60
+ puts %(
61
+ //////////////////////////////////////////////////////////////
62
+ // this source exists lib/collaborative_filtering/sample.rb //
63
+ //////////////////////////////////////////////////////////////
64
+ )
65
+ show_sample_data
66
+ sim_distance
67
+ sim_pearson
68
+ top_matches
69
+ get_recommendations
70
+ transform_prefs
71
+ end
72
+
73
+ def sim_distance
74
+ puts "write like this -> CollaborativeFiltering.sim_distance(SAMPLE, 'Yamada', 'Tanaka')"
75
+ p CollaborativeFiltering.sim_distance(SAMPLE, 'Yamada', 'Tanaka')
76
+ end
77
+
78
+ def sim_pearson
79
+ puts "write like this -> CollaborativeFiltering.sim_pearson(SAMPLE, 'Yamada', 'Tanaka')"
80
+ p CollaborativeFiltering.sim_pearson(SAMPLE, 'Yamada', 'Tanaka')
81
+ end
82
+
83
+ def top_matches
84
+ puts "write like this -> CollaborativeFiltering.top_matches(SAMPLE, 'Shimobayashi')"
85
+ p CollaborativeFiltering.top_matches(SAMPLE, 'Shimobayashi')
86
+ end
87
+
88
+ def get_recommendations
89
+ puts "write like this -> CollaborativeFiltering.get_recommendations(SAMPLE, 'Shimobayashi')"
90
+ p CollaborativeFiltering.get_recommendations(SAMPLE, 'Shimobayashi')
91
+ end
92
+
93
+ def transform_prefs
94
+ puts "write like this -> menu = CollaborativeFiltering.transform_prefs(SAMPLE)"
95
+ puts "write like this -> CollaborativeFiltering.top_matches(menu, 'Sushi')"
96
+ menu = CollaborativeFiltering.transform_prefs(SAMPLE)
97
+ p CollaborativeFiltering.top_matches(menu, 'Sushi')
98
+ end
99
+ end
100
+ end
@@ -1,3 +1,3 @@
1
1
  module CollaborativeFiltering
2
- VERSION = '0.4.0'
2
+ VERSION = '0.5.0'
3
3
  end
@@ -1,2 +1,3 @@
1
1
  require 'collaborative_filtering/version'
2
2
  require 'collaborative_filtering/collaborative_filtering'
3
+ require 'collaborative_filtering/sample'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: collaborative_filtering
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shoya TANAKA
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-06-10 00:00:00.000000000 Z
11
+ date: 2015-06-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -87,6 +87,7 @@ files:
87
87
  - collaborative_filtering.gemspec
88
88
  - lib/collaborative_filtering.rb
89
89
  - lib/collaborative_filtering/collaborative_filtering.rb
90
+ - lib/collaborative_filtering/sample.rb
90
91
  - lib/collaborative_filtering/version.rb
91
92
  homepage: https://github.com/8398a7/collaborative_filtering
92
93
  licenses: