Module: Khiva::Statistics

Defined in:
lib/khiva/statistics.rb

Class Method Summary collapse

Class Method Details

.covariance(tss, unbiased: false) ⇒ Object



4
5
6
7
8
# File 'lib/khiva/statistics.rb', line 4

def covariance(tss, unbiased: false)
  result = Utils.create_ptr
  FFI.call(:covariance_statistics, tss, Utils.bool_ptr(unbiased), result)
  Array.new(result)
end

.kurtosis(tss) ⇒ Object



10
11
12
13
14
# File 'lib/khiva/statistics.rb', line 10

def kurtosis(tss)
  result = Utils.create_ptr
  FFI.call(:kurtosis_statistics, tss, result)
  Array.new(result)
end

.ljung_box(tss, lags) ⇒ Object



16
17
18
19
20
# File 'lib/khiva/statistics.rb', line 16

def ljung_box(tss, lags)
  result = Utils.create_ptr
  FFI.call(:ljung_box, tss, Utils.long_ptr(lags), result)
  Array.new(result)
end

.moment(tss, k) ⇒ Object



22
23
24
25
26
# File 'lib/khiva/statistics.rb', line 22

def moment(tss, k)
  result = Utils.create_ptr
  FFI.call(:moment_statistics, tss, Utils.int_ptr(k), result)
  Array.new(result)
end

.quantile(tss, q, precision: 1e-8) ⇒ Object



28
29
30
31
32
# File 'lib/khiva/statistics.rb', line 28

def quantile(tss, q, precision: 1e-8)
  result = Utils.create_ptr
  FFI.call(:quantile_statistics, tss, q, Utils.float_ptr(precision), result)
  Array.new(result)
end

.quantiles_cut(tss, quantiles, precision: 1e-8) ⇒ Object



34
35
36
37
38
# File 'lib/khiva/statistics.rb', line 34

def quantiles_cut(tss, quantiles, precision: 1e-8)
  result = Utils.create_ptr
  FFI.call(:quantiles_cut_statistics, tss, Utils.float_ptr(quantiles), Utils.float_ptr(precision), result)
  Array.new(result)
end

.sample_stdev(tss) ⇒ Object



40
41
42
43
44
# File 'lib/khiva/statistics.rb', line 40

def sample_stdev(tss)
  result = Utils.create_ptr
  FFI.call(:sample_stdev_statistics, tss, result)
  Array.new(result)
end

.skewness(tss) ⇒ Object



46
47
48
49
50
# File 'lib/khiva/statistics.rb', line 46

def skewness(tss)
  result = Utils.create_ptr
  FFI.call(:skewness_statistics, tss, result)
  Array.new(result)
end