db_clustering 0.1.0 → 0.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/.rspec +1 -0
- data/.travis.yml +5 -0
- data/Gemfile +15 -11
- data/Gemfile.lock +149 -0
- data/LICENSE.txt +1 -1
- data/README.md +90 -0
- data/Rakefile +6 -6
- data/VERSION +1 -0
- data/lib/algorithms/density_based/dbscan.rb +48 -0
- data/lib/datasource_adapters/active_record.rb +32 -0
- data/lib/datasource_adapters/in_memory.rb +29 -0
- data/lib/db_clustering.rb +34 -0
- data/lib/distance_metrics/average_difference.rb +28 -0
- data/lib/distance_metrics/cosine_similarity.rb +43 -0
- data/lib/distance_metrics/euclidean_distance.rb +32 -0
- data/lib/distance_metrics/pearson_correlation.rb +44 -0
- data/lib/generators/datasource/active_record.rb +0 -0
- data/lib/models/cluster.rb +18 -0
- data/lib/models/point.rb +41 -0
- data/lib/models/vector.rb +30 -0
- data/spec/algorithms/density_based/dbscan_spec.rb +57 -0
- data/spec/datasource_adapters/active_record_spec.rb +0 -0
- data/spec/datasource_adapters/in_memory_spec.rb +82 -0
- data/spec/distance_metrics/average_difference_spec.rb +44 -0
- data/spec/distance_metrics/cosine_similarity_spec.rb +172 -0
- data/spec/distance_metrics/euclidean_distance_spec.rb +137 -0
- data/spec/distance_metrics/pearson_correlation_spec.rb +174 -0
- data/spec/generators/datasource/active_record_spec.rb +0 -0
- data/spec/models/cluster_spec.rb +0 -0
- data/spec/models/point_spec.rb +0 -0
- data/spec/models/vector_spec.rb +0 -0
- data/spec/spec_helper.rb +7 -2
- data/spec/support/dataset_helper.rb +19 -0
- data/spec/support/test_model.rb +9 -0
- metadata +31 -1
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/spec/spec_helper.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'simplecov'
|
2
|
+
require 'support/dataset_helper'
|
2
3
|
|
3
4
|
module SimpleCov::Configuration
|
4
5
|
def clean_filters
|
@@ -18,12 +19,16 @@ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
|
18
19
|
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
19
20
|
|
20
21
|
require 'rspec'
|
21
|
-
require '
|
22
|
+
require 'db_clustering'
|
23
|
+
require 'byebug'
|
22
24
|
|
23
25
|
# Requires supporting files with custom matchers and macros, etc,
|
24
26
|
# in ./support/ and its subdirectories.
|
25
27
|
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
|
26
28
|
|
27
29
|
RSpec.configure do |config|
|
28
|
-
|
30
|
+
config.expect_with :rspec do |c|
|
31
|
+
# only allow new expect syntax for specs
|
32
|
+
c.syntax = :expect
|
33
|
+
end
|
29
34
|
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
require 'support/test_model'
|
2
|
+
|
3
|
+
class DatasetHelper
|
4
|
+
def self.normal_distribution(vector_size: 3, clusters: 8, datapoints: 80)
|
5
|
+
dataset = []
|
6
|
+
sr = SimpleRandom.new
|
7
|
+
|
8
|
+
(1..datapoints).each do |i|
|
9
|
+
mean = -90 + (i % clusters) * (180.0 / clusters)
|
10
|
+
standard_deviation = 5
|
11
|
+
|
12
|
+
vector = []
|
13
|
+
vector_size.times{ |k| vector << sr.normal(mean, standard_deviation) }
|
14
|
+
dataset << TestModel.new(vector)
|
15
|
+
end
|
16
|
+
|
17
|
+
dataset
|
18
|
+
end
|
19
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: db_clustering
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Cihat Gündüz
|
@@ -225,13 +225,43 @@ executables: []
|
|
225
225
|
extensions: []
|
226
226
|
extra_rdoc_files:
|
227
227
|
- LICENSE.txt
|
228
|
+
- README.md
|
228
229
|
files:
|
229
230
|
- ".document"
|
230
231
|
- ".rspec"
|
232
|
+
- ".travis.yml"
|
231
233
|
- Gemfile
|
234
|
+
- Gemfile.lock
|
232
235
|
- LICENSE.txt
|
236
|
+
- README.md
|
233
237
|
- Rakefile
|
238
|
+
- VERSION
|
239
|
+
- lib/algorithms/density_based/dbscan.rb
|
240
|
+
- lib/datasource_adapters/active_record.rb
|
241
|
+
- lib/datasource_adapters/in_memory.rb
|
242
|
+
- lib/db_clustering.rb
|
243
|
+
- lib/distance_metrics/average_difference.rb
|
244
|
+
- lib/distance_metrics/cosine_similarity.rb
|
245
|
+
- lib/distance_metrics/euclidean_distance.rb
|
246
|
+
- lib/distance_metrics/pearson_correlation.rb
|
247
|
+
- lib/generators/datasource/active_record.rb
|
248
|
+
- lib/models/cluster.rb
|
249
|
+
- lib/models/point.rb
|
250
|
+
- lib/models/vector.rb
|
251
|
+
- spec/algorithms/density_based/dbscan_spec.rb
|
252
|
+
- spec/datasource_adapters/active_record_spec.rb
|
253
|
+
- spec/datasource_adapters/in_memory_spec.rb
|
254
|
+
- spec/distance_metrics/average_difference_spec.rb
|
255
|
+
- spec/distance_metrics/cosine_similarity_spec.rb
|
256
|
+
- spec/distance_metrics/euclidean_distance_spec.rb
|
257
|
+
- spec/distance_metrics/pearson_correlation_spec.rb
|
258
|
+
- spec/generators/datasource/active_record_spec.rb
|
259
|
+
- spec/models/cluster_spec.rb
|
260
|
+
- spec/models/point_spec.rb
|
261
|
+
- spec/models/vector_spec.rb
|
234
262
|
- spec/spec_helper.rb
|
263
|
+
- spec/support/dataset_helper.rb
|
264
|
+
- spec/support/test_model.rb
|
235
265
|
homepage: http://github.com/Dschee/db_clustering
|
236
266
|
licenses:
|
237
267
|
- MIT
|