るりまサーチ (Ruby 3.0)

最速Rubyリファレンスマニュアル検索!
18件ヒット [1-18件を表示] (0.023秒)
トップページ > クエリ:v[x] > クラス:Matrix[x] > バージョン:3.0[x]

別のキーワード

  1. socket ai_v4mapped
  2. socket ipv6_v6only
  3. socket ai_v4mapped_cfg
  4. _builtin grep_v
  5. etc cs_v6_env

ライブラリ

キーワード

検索結果

Matrix#column_vectors -> [Vector] (18604.0)

自分自身を列ベクトルの配列として返します。

...自分自身を列ベクトルの配列として返します。

//emlist[例][ruby]{
require 'matrix'
a1 = [ 1, 2, 3]
a2 = [10, 15, 20]
a3 = [-1, -2, 1.5]
m = Matrix[a1, a2, a3]

p m.column_vectors # => [Vector[1, 10, -1], Vector[2, 15, -2], Vector[3, 20, 1.5]]
//}...

Matrix#row_vectors -> [Vector] (18604.0)

自分自身を行ベクトルの配列として返します。

...自分自身を行ベクトルの配列として返します。

//emlist[例][ruby]{
require 'matrix'
a1 = [ 1, 2, 3]
a2 = [10, 15, 20]
a3 = [-1, -2, 1.5]
m = Matrix[a1, a2, a3]

p m.row_vectors # => [Vector[1, 2, 3], Vector[10, 15, 20], Vector[-1, -2, 1.5]]
//}...

Matrix#inv -> Matrix (18304.0)

逆行列を返します。

...逆行列を返します。

//emlist[例][ruby]{
require 'matrix'

p Matrix[[2, 1], [3, 2]].inv #=> Matrix[[(2/1), (-1/1)], [(-3/1), (2/1)]]

p Matrix[[2.0, 1.0], [3.0, 2.0]].inv #=> Matrix[[2.0000000000000004, -1.0000000000000002], [-3.000000000000001, 2.0000000000000004]]
//}...

Matrix#inverse -> Matrix (18304.0)

逆行列を返します。

...逆行列を返します。

//emlist[例][ruby]{
require 'matrix'

p Matrix[[2, 1], [3, 2]].inv #=> Matrix[[(2/1), (-1/1)], [(-3/1), (2/1)]]

p Matrix[[2.0, 1.0], [3.0, 2.0]].inv #=> Matrix[[2.0000000000000004, -1.0000000000000002], [-3.000000000000001, 2.0000000000000004]]
//}...

Matrix#vstack -> Matrix (18304.0)

行列 self と matrices を縦に並べた行列を生成します。

...と matrices を縦に並べた行列を生成します。

Matrix
.vstack(self, *matrices) と同じです。

//emlist[例][ruby]{
require 'matrix'
x = Matrix[[1, 2], [3, 4]]
y = Matrix[[5, 6], [7, 8]]
x.vstack(y) # => Matrix[[1, 2], [3, 4], [5, 6], [7, 8]]
//}

@see Matrix.vstack, Matrix#hstack...

絞り込み条件を変える

Matrix.column_vector(column) -> Matrix (18304.0)

要素がcolumnの(n,1)型の行列(列ベクトル)を生成します。

要素がcolumnの(n,1)型の行列(列ベクトル)を生成します。

@param column (n,1)型の行列として生成するVector Array オブジェクト

Matrix.row_vector(row) -> Matrix (18304.0)

要素がrowの(1,n)型の行列(行ベクトル)を生成します。

要素がrowの(1,n)型の行列(行ベクトル)を生成します。

@param row (1,n)型の行列として生成するVector Array オブジェクト

Matrix.vstack(*matrices) -> Matrix (18304.0)

行列 matrices を縦に並べた行列を生成します。

...][ruby]{
require 'matrix'
x = Matrix[[1, 2], [3, 4]]
y = Matrix[[5, 6], [7, 8]]
Matrix
.vstack(x, y) # => Matrix[[1, 2], [3, 4], [5, 6], [7, 8]]
//}

@param matrices 並べる行列。すべての行列の列数が一致していなければならない
@raise ExceptionForMatrix::ErrDimensionMismatch...
...列数の異なる行列がある場合に発生します
@see Matrix.hstack, Matrix#vstack...

Matrix#eigen -> Matrix::EigenvalueDecomposition (466.0)

行列の固有値と左右の固有ベクトルを保持したオブジェクトを返します。

...行列の固有値と左右の固有ベクトルを保持したオブジェクトを返します。

Matrix
::EigenvalueDecomposition は to_ary を定義しているため、
多重代入によって3つの行列(右固有ベクトル、固有値行列、左固有ベクトル)
を得ることがで...
...ruby]{
require 'matrix'
m = Matrix[[1, 2], [3, 4]]
v, d, v_inv = m.eigensystem
d.diagonal? # => true
v.inv == v_inv # => true
(v * d * v_inv).round(5) == m # => true
//}

@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します
@see Matrix::EigenvalueDec...

Matrix#eigensystem -> Matrix::EigenvalueDecomposition (466.0)

行列の固有値と左右の固有ベクトルを保持したオブジェクトを返します。

...行列の固有値と左右の固有ベクトルを保持したオブジェクトを返します。

Matrix
::EigenvalueDecomposition は to_ary を定義しているため、
多重代入によって3つの行列(右固有ベクトル、固有値行列、左固有ベクトル)
を得ることがで...
...ruby]{
require 'matrix'
m = Matrix[[1, 2], [3, 4]]
v, d, v_inv = m.eigensystem
d.diagonal? # => true
v.inv == v_inv # => true
(v * d * v_inv).round(5) == m # => true
//}

@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します
@see Matrix::EigenvalueDec...

絞り込み条件を変える

Matrix#[]=(row, col, v) (445.0)

行が row、列が col である範囲を v に変更する。

...す。
v が Matrix のとき、変更の対象範囲と行数・列数が同じである必要があります。
v が上記以外のとき、変更の対象範囲の全ての要素を v に変更します。

//emlist[][ruby]{
require 'matrix'

m = Matrix[[0, 0], [0, 0]]
m[0, 1...
...1] = 9
p m # => Matrix[[0, 6], [0, 9]]

m = Matrix[[0, 0, 0], [0, 0, 0], [0, 0, 0]]
m[0, 0..-1] = 5
m[1, 0..1] = Vector[2, 4]
m[2, 0..2] = Matrix[[3, 6, 9]]
p m #=> Matrix[[5, 5, 5], [2, 4, 0], [3, 6, 9]]

m = Matrix[[0, 0, 0], [0, 0, 0], [0, 0, 0]]
m[0..2, 0..1] = 9
p m # => Matrix[[9, 9, 0], [9,...
...9, 0], [9, 9, 0]]
m[1..-1, 0..1] = Matrix[[1, 2], [3, 4]]
p m # => Matrix[[9, 9, 0], [1, 2, 0], [3, 4, 0]]
//}...

Matrix#*(m) -> Matrix | Vector (304.0)

self に行列またはベクトル m を右から乗じた行列を返します。

...を返します。

m が Vector オブジェクトなら返り値も Vector オブジェクトになります。

@param m 右からの乗算が定義可能な行列やベクトルを指定します。

@raise ExceptionForMatrix::ErrDimensionMismatch 次元が合わない場合に発生します...

Matrix#column(j) -> Vector | nil (304.0)

j 番目の列を Vector オブジェクトで返します。 j 番目の列が存在しない場合は nil を返します。 ブロックが与えられた場合はその列の各要素についてブロックを繰り返します。

...ンデックスと見倣します。末尾の列が -1 番目になります。

//emlist[例][ruby]{
require 'matrix'

a1 = [ 1, 2, 3]
a2 = [10, 15, 20]
a3 = [-1, -2, 1.5]
m = Matrix[a1, a2, a3]

p m.column(1) # => Vector[2, 15, -2]

cnt = 0
m.column(-1) { |x|
cnt = cnt + x
}
p cnt # => 24.5...

Matrix#find_index(value, selector = :all) -> [Integer, Integer] | nil (304.0)

指定した値と一致する要素の位置を [row, column] という配列で返します。 ブロックを与えた場合は各要素を引数としてブロックを呼び出し、 返り値が真であった要素の位置を返します。

...で行列のどの部分を探すかを指定します。この引数の意味は
Matrix
#each を参照してください。

//emlist[例][ruby]{
require 'matrix'
Matrix
[ [1,2], [3,4] ].index(&:even?) # => [0, 1]
Matrix
[ [1,1], [1,1] ].index(1, :strict_lower) # => [1, 0]
//}

value を指定せず...

Matrix#index(value, selector = :all) -> [Integer, Integer] | nil (304.0)

指定した値と一致する要素の位置を [row, column] という配列で返します。 ブロックを与えた場合は各要素を引数としてブロックを呼び出し、 返り値が真であった要素の位置を返します。

...で行列のどの部分を探すかを指定します。この引数の意味は
Matrix
#each を参照してください。

//emlist[例][ruby]{
require 'matrix'
Matrix
[ [1,2], [3,4] ].index(&:even?) # => [0, 1]
Matrix
[ [1,1], [1,1] ].index(1, :strict_lower) # => [1, 0]
//}

value を指定せず...

絞り込み条件を変える

Matrix#row(i) -> Vector | nil (304.0)

i 番目の行を Vector オブジェクトで返します。 i 番目の行が存在しない場合は nil を返します。 ブロックが与えられた場合はその行の各要素についてブロックを繰り返します。

...す。
ブロックが与えられた場合はその行の各要素についてブロックを繰り返します。

Vector オブジェクトは Matrix オブジェクトとの演算の際には列ベクトルとして扱われることに注意してください。

@param i 行の位置を指定...
...のインデックスと見倣します。末尾の行が -1 番目になります。

//emlist[例][ruby]{
require 'matrix'
a1 = [1, 2, 3]
a2 = [10, 15, 20]
a3 = [-1, -2, 1.5]
m = Matrix[a1, a2, a3]

p m.row(1) # => Vector[10, 15, 20]

cnt = 0
m.row(0) { |x|
cnt = cnt + x
}
p cnt # => 6
//}...

Matrix.diagonal(*values) -> Matrix (304.0)

対角要素がvaluesで、非対角要素が全て0であるような 正方行列を生成します。

...次元Arrayを1個指定すると、そのArrayを唯一の要素とした1×1の行列が生成されます。

//emlist[例][ruby]{
require 'matrix'

m = Matrix.diagonal(1, 2, 3)
p m # => Matrix[[1, 0, 0], [0, 2, 0], [0, 0, 3]]
a = [1,2,3]
m = Matrix.diagonal(a)
p m # => Matrix[[[1, 2, 3]]]
//}...

Matrix.scalar(n, value) -> Matrix (304.0)

対角要素が全てvalue(数)で、非対角要素が全て0であるようなn次の正方行列を生成します。

...角要素が全て0であるようなn次の正方行列を生成します。

@param n 生成する行列の次元
@param value 生成する行列の対角要素の値


//emlist[例][ruby]{
require 'matrix'

m = Matrix.scalar(3, 2.5)
p m # => Matrix[[2.5, 0, 0], [0, 2.5, 0], [0, 0, 2.5]]
//}...