Download presentation
Presentation is loading. Please wait.
1
「R入門」 5.7 行列に対する諸機能 10月23日 (木) 発表者 大城亜里沙
2
行列の諸機能 行列: 2重の添字を持つ配列のこと。 Rには行列専用の多くの演算と関数がある。 (例) ・ 転置行列 : ・ 行列Aの行数 :
行列: 2重の添字を持つ配列のこと。 Rには行列専用の多くの演算と関数がある。 (例) ・ 転置行列 : ・ 行列Aの行数 : ・ 行列Aの列数 :
3
行列の積 ・演算子 行列の積 ( AとBは同じサイズの正方行列 ) ・ 行列や 行列 ベクトルとして使える。
・演算子 行列の積 ( AとBは同じサイズの正方行列 ) ・ 行列や 行列 ベクトルとして使える。 ・ 2次形式を表す。(x:ベクトル) (例) とすると、
4
関数crossprod( ) と 関数diag( )
より効率的 crossprod(X,y) t(X) %*% y 関数diag( ) は引数によって意味が異なる。 (例) ①引数がベクトルの場合 ②引数が行列の場合 V=(a,b,c) 3×3の対角行列になる。 ベクトルになる。
5
線形方程式 線形方程式 b <- A %*% x ベクトルxがこの連立方程式の解であり、 solve(A,b) これを解くことにより、
線形方程式 b <- A %*% x ベクトルxがこの連立方程式の解であり、 solve(A,b) これを解くことにより、 解xが得られる
6
固有値と固有ベクトル 関数 eigen(Sm) は対象行列Smの固有値と固有ベクトルを計算する。 (values) (vectors)
(例) の固有値と固有ベクトルを求める。 > ev <- eigen(Sm) > ev $values [1] $vectors [ ,1] [ ,2] [1, ] … … [2, ] … … 固有値だけが欲しい場合 >evals <- eigen(Sm) $values とすればよい。 固有ベクトルだけが欲しい場合も同様である。
7
特異値分解 関数svd (M) は行列引数Mを取り、Mの特異値分解を計算する
特異値分解は M = U %*% D %*% t(V)と表される。 特異値分解とは、 M(m×n) を M=UDVT の形に分解する手法. U ・・・列正規直交行列(m×n) (UTU=E ,UUT E ) D ・・・対角行列(n×n) V ・・・正規直交行列(m×n) ( VTV=VVT=E )
8
最小自乗法 関数lsfit( ) は最小自乗法による当てはめの結果を与えるリストを返す。
> ans <- lsfit(X,y ) ( X:計画行列 ,y:観測地のベクトル) ヘルプ機能参照
9
宿題 ① 関数diag(k)の引数がスカラーの場合はどのように表されるか。ただし、引数はk=3とする。
② 対象行列Smの固有ベクトルを求めよ。
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.