Class: Regression::CorrelationCoefficient

Inherits:
Base
  • Object
show all
Defined in:
lib/linear-regression/correlation_coefficient.rb

Instance Method Summary collapse

Methods inherited from Base

#covariance, #covariance2, #mean, #standard_deviation, #variance

Constructor Details

#initialize(xs, ys) ⇒ CorrelationCoefficient

Returns a new instance of CorrelationCoefficient.



3
4
5
6
7
8
# File 'lib/linear-regression/correlation_coefficient.rb', line 3

def initialize(xs, ys)
  raise "Length xs and ys must be equal" unless xs.length == ys.length

  @xs = xs
  @ys = ys
end

Instance Method Details

#pearsonObject

Pearson product-moment correlation coefficient en.wikipedia.org/wiki/Pearson_product-moment_correlation_coefficient



13
14
15
# File 'lib/linear-regression/correlation_coefficient.rb', line 13

def pearson
  @pearson ||= covariance(@xs, @ys) / (standard_deviation(@xs).to_f * standard_deviation(@ys).to_f)
end

#spearmanObject

Spearman’s rank correlation coefficient en.wikipedia.org/wiki/Spearman%27s_rank_correlation_coefficient



19
20
21
# File 'lib/linear-regression/correlation_coefficient.rb', line 19

def spearman
  @spearman ||= calc_spearman
end