movieDB 0.1.5 → 0.1.6

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: 745f9c699483e8e9225c785db74f0813b994b6b1
4
- data.tar.gz: 4f271e484f9335b363301b2b3a4ffb0ccdffa542
3
+ metadata.gz: 47a6b5c9b4e330fe911c6e9e1374767c5dc26208
4
+ data.tar.gz: aba7b9074ec6759e349e4bf49379725903107c9e
5
5
  SHA512:
6
- metadata.gz: a24f68d4b3fa8d85d44ecc8a463ebc76f5836a1a8abd363d41cb46bab4ca1cef8a6c3bee3b9e9822ec25177d8d5b746c53f0d1ec90fa63e937e989db31916885
7
- data.tar.gz: 01a0f744e9b4801d03abc458618b3e41715ff86db32a578903c63ec6f27b20ef451ffcdb3d695c34384e9a4e7cfb6b0f7ed86a27359e1f598f149c9fc2e9b0bf
6
+ metadata.gz: c44775435f1b8eda891c8b9a484cd49fc9ca0d7423acc3fa3a1018251d785e2c2d8f771006595e659602ebd2cc867fe4a385c5f969f2c26807f6f5d7245c7961
7
+ data.tar.gz: f36907d783dbd939bf01171b2b797cb9196d8d5d44eafeafba2209838e9d4d33cdb6d18783dfcf1cda673c963156afa7077e6cabc78326615a3c0dc683dffa4b
data/README.md CHANGED
@@ -2,13 +2,11 @@
2
2
 
3
3
  ## Description
4
4
 
5
- A ruby wrapper that inspects, cleans, transform and model imdb data and provides useful information, suggesting conclusion.
5
+ Although the name may suggest a datastore gem, MovieDB is rather a ruby wrapper that inspects, cleans, transform and model imdb data and provides useful information, suggesting conclusion.
6
6
  The objective is to help movie/film producers make decisions based on archival data.
7
7
 
8
8
  Basic functions and Data Analysis:
9
- * Data mining
10
- * Business Intelligence
11
- * Descriptive Satistics
9
+ * Data Analysis
12
10
  * Exploratory Data Analysis
13
11
  * Confirmatory Data Analysis
14
12
 
@@ -1,12 +1,11 @@
1
- require 'rubygems'
2
- require 'active_support/all'
3
- require 'time'
4
- require 'MovieDB/base'
1
+ require "rubygems"
2
+ require "time"
5
3
  require "open-uri"
6
- require 'nokogiri'
4
+ require "nokogiri"
7
5
  require "imdb"
8
- require "MovieDB/Person"
9
- require "movieDB/version"
6
+ require "spreadsheet"
7
+ require "MovieDB/base"
8
+ require "MovieDB/data_analysis"
10
9
 
11
10
  ##
12
11
  # Create a new movie record. The values are stored in the key-value data store.
@@ -29,7 +28,7 @@ unless defined? MovieDB::Movie
29
28
 
30
29
  const_set("MovieError", Class.new(StandardError))
31
30
 
32
- attr_accessor :title, :cast, :director, :released_date, :released_date, :film_release, :writer,
31
+ attr_accessor :title, :cast, :director, :released_date, :film_release, :writer,
33
32
  :unique_id, :genre, :academy_award_nomination, :academy_award_wins, :golden_globe_nominations, :golden_globe_wins,
34
33
  :bafta_nomination, :bafta_wins, :worldwide_gross
35
34
  alias :released? :film_release
@@ -51,7 +50,7 @@ unless defined? MovieDB::Movie
51
50
  DEFAULT_WORLDWIDE_GROSS = "$9750 Million"
52
51
 
53
52
  def initialize(attributes = {})
54
- movie_attr = %w(title cast director released_date film_release writer unique_id
53
+ movie_attr = %w(title cast director re leased_date film_release writer unique_id
55
54
  genre academy_award_nomination academy_award_wins golden_globe_nominations
56
55
  golden_globe_wins bafta_nomination bafta_wins worldwide_gross)
57
56
  movie_attr.each do |attr|
@@ -3,7 +3,7 @@ require 'MovieDB/status_checker'
3
3
  require 'MovieDB/movie_error'
4
4
 
5
5
  module MovieDB #:nodoc
6
- # MoviesDB v0.1.0 can manage the data store of pre-production, production and final film releases.
6
+ # MoviesDB v0.1.x is not a datastore gem. Rather is performs mathematical computations for analyzing film data from imdb. can manage the data store of pre-production, production and final film releases.
7
7
  # Its a solution to the common problem of building a multi-database that utilizes both SQL and NoSQL
8
8
  # combined features to increase speed and performance for reading records.
9
9
  class Base
@@ -0,0 +1,127 @@
1
+ module MovieDB
2
+
3
+ ##
4
+ # Analysing, inspecting, cleaning, transforming and modeling data.
5
+
6
+ class DataAnalysis
7
+ module AnalysisOfVariance
8
+ module LeastSquares
9
+ module Coefficient_Of_Determination; end
10
+ module Discrete_Least_Squares_Meshless_Method; end
11
+ module Explained_Sum_Of_Squares; end
12
+ module Fraction_Of_Variance_Unexplained; end
13
+ module Gauss_Newton_Algorithm; end
14
+ module Iteratively_Reweighted_Least_Squares; end
15
+ module Lack_Of_Fit_Sum_Of_Squares; end
16
+ module Least_Squares_Support_Vector_Machine; end
17
+ module Mean_Squared_Error; end
18
+ module Moving_Least_Squares; end
19
+ module Non_Linear_Iterative_Partial_Least_Squares; end
20
+ module Non_Linear_Least_Squares; end
21
+ module Ordinary_Least_Squares; end
22
+ module Partial_Least_Squares_Regression; end
23
+ module Partition_Of_Sums_Of_Squares; end
24
+ module Proofs_Involving_Ordinary_Least_Squares; end
25
+ module Residual_Sum_Of_Squares; end
26
+ module Total_Least_Squares; end
27
+ module Total_Sum_Of_Squares; end
28
+ end
29
+ end
30
+
31
+ module EstimationOfDensit
32
+ module Cluster_Weighted_Modeling; end
33
+ module Density_Estimation; end
34
+ module Discretization_Of_Continuous_Features; end
35
+ module Mean_Integrated_Squared_Error; end
36
+ module Multivariate_Kernel_Density_Estimation; end
37
+ module Variable_Kernel_Density_Estimation; end
38
+ end
39
+
40
+ ##
41
+ # primarily EDA is for seeing what the data can
42
+ # tell us beyond the formal modeling or hypothesis testing task
43
+ # The output will be a visual material
44
+
45
+ module ExploratoryDataAnalysis
46
+ module Data_Reduction; end
47
+ module Table_Diagonalization; end
48
+ module Configural_Frequency_Analysis; end
49
+ module Median_Polish; end
50
+ module Stem_And_Leaf_Display; end
51
+ end
52
+
53
+
54
+ module Data_Mining
55
+ module Applied_DataMining; end
56
+ module Cluster_Analysis; end
57
+ module Dimension_Reduction; end
58
+ module Applied_DataMining; end
59
+ end
60
+
61
+ module RegressionAnalysis
62
+ module Choice_Modelling; end
63
+
64
+ module Generalized_Linear_Model
65
+ module Binomial_Regression; end
66
+ module Generalized_Additive_Model; end
67
+ module Linear_Probability_Model; end
68
+ module Poisson_Regression; end
69
+ module Zero_Inflated_Model; end
70
+ end
71
+
72
+ module Nonparametric_Regression; end
73
+ module Statistical_Outliers; end
74
+ module Regression_And_Curve_Fitting_Software; end
75
+ module Regression_Diagnostics; end
76
+ module Regression_Variable_Selection; end
77
+ module Regression_With_Time_Series_Structure; end
78
+ module Robust_Regression; end
79
+ module Choice_Modeling; end
80
+ end
81
+
82
+ module Resampling
83
+ module Bootstrapping_Population; end
84
+ end
85
+
86
+ module Sensitivity_Analysis
87
+ module Variance_Based_Sensitivity_Analysis; end
88
+ module Elementary_Effects_Method; end
89
+ module Experimental_Uncertainty_Analysis; end
90
+ module Fourier_Amplitude_Sensitivity_Testing; end
91
+ module Hyperparameter; end
92
+ end
93
+
94
+ module Time_series_Analysis
95
+ module Frequency_Deviation; end
96
+ end
97
+ end
98
+
99
+ ##
100
+ #TODO: Add all more analysis
101
+ class ExportData
102
+ def printout (data, data_analysis_name)
103
+
104
+ begin data_analysis.is_a? String
105
+ data_analysis_name = data_analysis_name.split.join.gsub('_', ' ').downcase.to_s
106
+
107
+ case data_analysis_name
108
+ when "coefficient of determination"
109
+ book = Spreadsheet::Workbook.new
110
+ sheet1 = book.create_worksheet name: "Data Analysis: #{data_analysis_name}"
111
+ sheet1.row(0).concat %w{title released_date worldwide_gross}
112
+
113
+ # Loop through the data to collect all values.
114
+ # Then values into array
115
+
116
+ data.each_with_index do |value, index|
117
+ sheet1[1, index] = "#{value}"
118
+ end
119
+ when "discrete least squares meshless method"
120
+ else
121
+ end
122
+ rescue
123
+ raise ArgumentError, 'invalid attribute'
124
+ end
125
+ end
126
+ end
127
+ end
@@ -1,3 +1,3 @@
1
1
  module MovieDB
2
- VERSION = "0.1.5"
2
+ VERSION = "0.1.6"
3
3
  end
@@ -8,7 +8,7 @@ Gem::Specification.new do |spec|
8
8
  spec.version = MovieDB::VERSION
9
9
  spec.authors = ["Albert_McKeever"]
10
10
  spec.email = ["kotn_ep1@hotmail.com"]
11
- spec.description = %q{Collect Movie Information. Perform Data Analysis}
11
+ spec.description = %q{Collect Movie Information. Perform Confirmatory and Exploratory Data Analysis}
12
12
  spec.summary = %q{Movie Statistic and Data Analysis}
13
13
  spec.homepage = "https://github.com/keeperofthenecklace/movieDB"
14
14
  spec.license = "MIT"
@@ -23,8 +23,7 @@ Gem::Specification.new do |spec|
23
23
  spec.add_development_dependency "rspec"
24
24
  spec.add_development_dependency 'imdb'
25
25
  spec.add_development_dependency 'highline'
26
- spec.add_development_dependency 'yaml'
27
26
  spec.add_development_dependency 'fakeweb'
28
27
  spec.add_dependency "activesupport", ">= 4.0.0"
29
- spec.add_dependency "simple_bdd"
28
+ spec.add_dependency "spreadsheet"
30
29
  end
@@ -1,5 +1,4 @@
1
1
  require 'spec_helper'
2
- require 'simple_bdd'
3
2
 
4
3
  describe MovieDB do
5
4
  let(:defaultMovie){ MovieDB::Movie.new() }
@@ -1,14 +1,12 @@
1
1
  $:.unshift File.expand_path('..', __FILE__)
2
2
  $:.unshift File.expand_path('../../lib/', __FILE__)
3
-
3
+ require 'movieDB'
4
4
  require 'MovieDB/base'
5
+ require "MovieDB/person"
5
6
  require 'MovieDB/status_checker'
6
7
  require 'MovieDB/movie_error'
7
- require 'MovieDB/person'
8
- require 'movieDB'
9
-
10
- require 'simple_bdd'
8
+ require "MovieDB/data_analysis"
11
9
 
12
10
  RSpec.configure do |config|
13
- config.include SimpleBdd
11
+ # config.include SimpleBdd
14
12
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: movieDB
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Albert_McKeever
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-12-10 00:00:00.000000000 Z
11
+ date: 2013-12-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -80,20 +80,6 @@ dependencies:
80
80
  - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: yaml
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
83
  - !ruby/object:Gem::Dependency
98
84
  name: fakeweb
99
85
  requirement: !ruby/object:Gem::Requirement
@@ -123,7 +109,7 @@ dependencies:
123
109
  - !ruby/object:Gem::Version
124
110
  version: 4.0.0
125
111
  - !ruby/object:Gem::Dependency
126
- name: simple_bdd
112
+ name: spreadsheet
127
113
  requirement: !ruby/object:Gem::Requirement
128
114
  requirements:
129
115
  - - ">="
@@ -136,7 +122,8 @@ dependencies:
136
122
  - - ">="
137
123
  - !ruby/object:Gem::Version
138
124
  version: '0'
139
- description: Collect Movie Information. Perform Data Analysis
125
+ description: Collect Movie Information. Perform Confirmatory and Exploratory Data
126
+ Analysis
140
127
  email:
141
128
  - kotn_ep1@hotmail.com
142
129
  executables: []
@@ -150,11 +137,7 @@ files:
150
137
  - Rakefile
151
138
  - lib/movieDB.rb
152
139
  - lib/movieDB/base.rb
153
- - lib/movieDB/business_intelligence.rb
154
- - lib/movieDB/confirmatory_data_analysis.rb
155
- - lib/movieDB/data_mining.rb
156
- - lib/movieDB/descriptive_statistic.rb
157
- - lib/movieDB/exploratory_data_analysis.rb
140
+ - lib/movieDB/data_analysis.rb
158
141
  - lib/movieDB/genre_parser.rb
159
142
  - lib/movieDB/genres/en.txt
160
143
  - lib/movieDB/movie_error.rb
@@ -1,16 +0,0 @@
1
-
2
- ##
3
- #TODO:Work-In_Porgress
4
-
5
- module MovieDB
6
-
7
- class BusinessIntelligence
8
- attr_accessor :movie_id1, :movie_id2
9
-
10
- def initialize(movie_id1 = nil, movie_id2 = nil)
11
- @movie_id1 = Imdb::Movie.new(movie_id1)
12
- @movie_id2 = Imdb::Movie.new(movie_id2)
13
- end
14
-
15
- end
16
- end
@@ -1,16 +0,0 @@
1
-
2
- ##
3
- #TODO:Work-In_Porgress
4
-
5
- module MovieDB
6
-
7
- class ConfirmatoryDataAnalysis
8
- attr_accessor :movie_id1, :movie_id2
9
-
10
- def initialize(movie_id1 = nil, movie_id2 = nil)
11
- @movie_id1 = Imdb::Movie.new(movie_id1)
12
- @movie_id2 = Imdb::Movie.new(movie_id2)
13
- end
14
-
15
- end
16
- end
@@ -1,48 +0,0 @@
1
-
2
- ## Reference imdb gem
3
- #TODO:Work-In_Porgress
4
-
5
- module MovieDB
6
-
7
- class DataMining
8
- attr_accessor :movie_id1, :movie_id2
9
-
10
- def initialize(movie_id1 = nil, movie_id2 = nil)
11
- @movie_id1 = Imdb::Movie.new(movie_id1)
12
- @movie_id2 = Imdb::Movie.new(movie_id2)
13
- end
14
-
15
- def series(value)
16
- if value is_a? Integer
17
- begin
18
- @serie = Imdb::Serie.new(value.to_s)
19
-
20
- rescue
21
- end
22
- else
23
- raise ArgumentError, "value is not an integer"
24
- end
25
- end
26
-
27
- def analyse_title
28
- @episode.title
29
- end
30
-
31
- def analyse_season_number(season_num, episode_integer)
32
- @season = @serie.seasons.first
33
- @episode = @season.episode(integer)
34
- end
35
-
36
- def analyse_episode_number
37
- @episode.episode
38
- end
39
-
40
- def analyse_plot
41
- @episode.plot
42
- end
43
-
44
- def analyse_air_date
45
- @episode.air_date
46
- end
47
- end
48
- end
File without changes
@@ -1,16 +0,0 @@
1
-
2
- ##
3
- #TODO:Work-In_Porgress
4
-
5
- module MovieDB
6
-
7
- class ExploratoryDataAnalysis
8
- attr_accessor :movie_id1, :movie_id2
9
-
10
- def initialize(movie_id1 = nil, movie_id2 = nil)
11
- @movie_id1 = Imdb::Movie.new(movie_id1)
12
- @movie_id2 = Imdb::Movie.new(movie_id2)
13
- end
14
-
15
- end
16
- end