Class: Matrix
Instance Method Summary collapse
- #[]=(i, j, x) ⇒ Object
-
#eigenpairs ⇒ Object
Optimize eigenpairs of extendmatrix module using gsl.
- #eigenpairs_ruby ⇒ Object
- #eigenvalues ⇒ Object
- #eigenvectors ⇒ Object
- #eigenvectors_matrix ⇒ Object
- #to_dataset ⇒ Object
- #to_gsl ⇒ Object
- #to_matrix ⇒ Object
Instance Method Details
#[]=(i, j, x) ⇒ Object
60 61 62 |
# File 'lib/statsample/matrix.rb', line 60 def []=(i, j, x) @rows[i][j] = x end |
#eigenpairs ⇒ Object
Optimize eigenpairs of extendmatrix module using gsl
35 36 37 |
# File 'lib/statsample/matrix.rb', line 35 def eigenpairs to_gsl.eigenpairs end |
#eigenpairs_ruby ⇒ Object
30 |
# File 'lib/statsample/matrix.rb', line 30 alias_method :eigenpairs_ruby, :eigenpairs |
#eigenvalues ⇒ Object
40 41 42 |
# File 'lib/statsample/matrix.rb', line 40 def eigenvalues eigenpairs.collect {|v| v[0]} end |
#eigenvectors ⇒ Object
44 45 46 |
# File 'lib/statsample/matrix.rb', line 44 def eigenvectors eigenpairs.collect {|v| v[1]} end |
#eigenvectors_matrix ⇒ Object
48 49 50 |
# File 'lib/statsample/matrix.rb', line 48 def eigenvectors_matrix Matrix.columns(eigenvectors) end |
#to_dataset ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/statsample/matrix.rb', line 14 def to_dataset f = (self.respond_to? :fields_y) ? fields_y : column_size.times.map {|i| _("VAR_%d") % (i+1) } ds=Statsample::Dataset.new(f) f.each do |ff| ds[ff].type=:numeric ds[ff].name=ff end row_size.times {|i| ds.add_case_array(self.row(i).to_a) } ds.update_valid_data ds.name=self.name if self.respond_to? :name ds end |
#to_gsl ⇒ Object
52 53 54 55 56 57 58 |
# File 'lib/statsample/matrix.rb', line 52 def to_gsl out=[] self.row_size.times{|i| out[i]=self.row(i).to_a } GSL::Matrix[*out] end |
#to_matrix ⇒ Object
10 11 12 |
# File 'lib/statsample/matrix.rb', line 10 def to_matrix self end |