読者です 読者をやめる 読者になる 読者になる

Rを通じて統計学を学ぶ備忘録ブログ

SPSSからRに移行したい私のような人向けのR解説ブログ兼学習用備忘録。

第6回 行列の演算

第6回は行列の演算について書きます。

 

行列を使って、基本演算を行っていきましょう。

2×3の行列を例に計算していきましょう。

> matrix1 <- matrix(1:6,2,3)

> matrix1

     [,1] [,2] [,3]

[1,]    1    3    5

[2,]    2    4    6

> matrix2 <- matrix(6:11,2,3)

> matrix2

     [,1] [,2] [,3]

[1,]    6    8   10

[2,]    7    9   11

 

> matrix1+matrix2

     [,1]   [,2]   [,3]

[1,]    7   11   15

[2,]    9   13   17

> matrix1-matrix2

     [,1]   [,2]   [,3]

[1,]   -5   -5   -5

[2,]   -5   -5   -5

> matrix1*matrix2

     [,1]   [,2]   [,3]

[1,]    6   24   50

[2,]   14   36   66

> matrix1/matrix2

          [,1]          [,2]            [,3]

[1,] 0.1666667 0.3750000 0.5000000

[2,] 0.2857143 0.4444444 0.5454545

行列を転置させてみましょう。 

> matrix1

     [,1]  [,2]  [,3]

[1,]    1    3    5

[2,]    2    4    6

> t(matrix1) #行列を転置させる

     [,1]  [,2]

[1,]    1    2

[2,]    3    4

[3,]    5    6

 行列の積を行います。

> matrixt<-t(matrix1)

> matrixt%*%matrix2

      [,1]   [,2]   [,3]

[1,]   20   26   32

[2,]   46   60   74

[3,]   72   94  116

> matrix2%*%matrixt

       [,1]   [,2]

[1,]   80  104

[2,]   89  116

基本的に 行列積ABとBAは一致しません。

 

関数おさらい

t():行列を転置させる

 

第6回は以上でお終い。

広告を非表示にする