第8章 ベクトル・行列の基礎 Rによるベクトル・行列の表現と計算法.

Slides:



Advertisements
Similar presentations
1 エクセル (3) の目次 ②参照演算子と演算子参照演算子と演算子 ③参照セルの表示法参照セルの表示法 ④セルの参照方法セルの参照方法 ⑤エラーについてエラーについて ⑥シグマ( Σ )関数シグマ( Σ )関数 ⑦条件付書式条件付書式 ⑧問題 (1)問題 (1) ⑨問題 (2)問題 (2) ⑩問題.
Advertisements

HBSP モデル上での 行列積を求めるアルゴリ ム 情報論理工学 吉岡健太.
1 線形代数学. 2 履修にあたって 電子情報システム学科 必修 2005 年度1セメスタ開講 担当 草苅良至 (電子情報システム学科) 教官室: G I 511 内線: 2095 質問等は上記のいずれかに行なうこと。 注意計算用のノートを準備すること。
1 微分・ベクトル解析 (4) 講師:幹 浩文( A314) TA :西方良太 M 1 ( A305 ) A 1 03 ( 10 : 50~12 : 20 ) 【金】 https://
0章 数学基礎.
主成分分析 主成分分析は 多くの変数の中を軸を取り直すことで より低い次元で表現できるようにする。 データがばらついている方向ほど
      ベクトル空間   実数体 体:数の集合で四則がその中で行えるもの 例)有理数全体、実数全体、複素数全体 R:実数体     C:複素数体  ベクトル空間
データ解析
コンピュータプログラミングIII ベクトルと行列の演算
A Q R QR分解とは? → × ◆QR分解 QTQ = I (単位行列) ◆応用例 ◆主な計算方法 n m 今回はこの方法に注目
( ) ( ) 行 列 式 置 換 n文字の置換σ: n個の文字{1,2,・・・,n}から自分自身への1対1の写像 1 2 ・・・ n
MATLAB測位プログラミングの 基礎とGT (3)
det(tA)=Σ sgn(σ)aσ(1)1aσ(2)2・・・aσ(n)n
C言語 配列 2016年 吉田研究室.
プログラミング言語としてのR 情報知能学科 白井 英俊.
4.3 連立1次方程式   Ax = b   (23) と書くことができる。
行列の計算 行列とは 行列の型 行列の演算 (C) Katsuhiro Yamada.
数値計算及び実習 第3回 プログラミングの基礎(1).
プログラミング論 I 行列の演算
Extremal Combinatorics 14.1 ~ 14.2
基礎プログラミング (第五回) 担当者: 伊藤誠 (量子多体物理研究室) 内容: 1. 先週のおさらいと続き (実習)
IT入門B2 ー 連立一次方程式 ー.
群別・男女別の平均.
線形代数学 4.行列式 吉村 裕一.
エージェントを管理するボスの苦悩 問題 n人のエージェントを部下に持つボスがいる. エージェントは出張・帰還を頻繁に繰り返す.
高校数学の知識から、 人工知能・機械学習・データ解析へ つなげる、 必要最低限の教科書
3次元での回転表示について.
精密工学科プログラミング基礎Ⅱ 第3回資料 今回の授業で習得してほしいこと: 2次元配列の使い方 (前回の1次元配列の復習もします.)
数学 ---> 抽象化、一般化 より複雑な関係ー>解析学 一次関数 y=ax+b より多くの要素ー>線形代数 x y f(x) y1 x1
2009/10/16 いろいろなデータ構造 第3講: 平成21年10月16日 (金) 4限 E252教室 コンピュータアルゴリズム.
線形代数学 谷津 哲平 第1章 ベクトル 1.1 ベクトル空間 1.2 ベクトルの一次独立性 1.3 部分ベクトル空間
第二回 VB講座 電卓を作ろう.
確率伝搬法と量子系の平均場理論 田中和之 東北大学大学院情報科学研究科
情報とコンピュータ 静岡大学工学部 安藤和敏
情報とコンピュータ 静岡大学工学部 安藤和敏
「R入門」  5.7 行列に対する諸機能  10月23日 (木) 発表者 大城亜里沙.
線 形 代 数 (linear algebra) linear ・・・ line(直線)の形容詞形 直線的な、線形の、一次の
3次元での回転表示について.
知能システム論I(13) 行列の演算と応用(Matrix) 2008.7.8.
デジタル画像とC言語.
変換されても変換されない頑固ベクトル どうしたら頑固になれるか 頑固なベクトルは何に使える?
パターン認識特論 担当:和田 俊和 部屋 A513 主成分分析
様々な情報源(4章).
プロセスデータ解析学5 -主成分分析- 担当:長谷部伸治     金 尚弘.
資料 線型変換のイメージ 固有値、固有ベクトル 平賀譲(209研究室) 資料
プログラミング基礎a 第6回 C言語によるプログラミング入門 配列と文字列(その2)
統計ソフトウエアRの基礎.
プログラミング 3 2 次元配列.
表計算ソフトウェアの活用① [基本的な関数]
行列式 方程式の解 Cramerの公式 余因数展開.
精密工学科プログラミング基礎 第7回資料 (11/27実施)
行列 一次変換,とくに直交変換.
構造方程式ゼミナール 2012年11月14日-11月21日 構造方程式モデルの作成.
2019/6/6 リストを格納する変数 配列と連想配列.
パターン認識特論 カーネル主成分分析 和田俊和.
シミュレーション演習 G. 総合演習 (Mathematica演習) システム創成情報工学科
第4章 double 小数型の変数;.
精密工学科プログラミング基礎Ⅱ 第2回資料 今回の授業で習得してほしいこと: 配列の使い方 (今回は1次元,次回は2次元をやります.)
例題のプログラムを通して JavaScriptの仕組みを理解することとします。
分散メモリ型並列計算機上での行列演算の並列化
高校数学の知識から、 人工知能・機械学習・データ解析へ つなげる、 必要最低限の教科書
プログラミング基礎a 第5回 C言語によるプログラミング入門 配列と文字列
プログラミング入門2 第5回 配列 変数宣言、初期化について
逆運動学(Inverse Kinematics) 2007.5.15
printf・scanf・変数・四則演算
復習 いろいろな変数型(2) char 1バイト → 英数字1文字を入れるのにぴったり アスキーコード → 付録 int
香川大学創造工学部 富永浩之 情報数学1 第3-3章 多進法での四則演算 香川大学創造工学部 富永浩之
本時の目標 いろいろな立体の表面積を求めることができる。
オブジェクト指向言語論 第六回 知能情報学部 新田直也.
情報処理3 第4回目講義         担当 鶴貝 達政 12/17/2019.
Presentation transcript:

第8章 ベクトル・行列の基礎 Rによるベクトル・行列の表現と計算法

8.1 スカラーとベクトル スカラー 単一の値を持つもの ベクトル 複数の値を縦もしくは横に並べたもの 例:   単一の値を持つもの ベクトル 複数の値を縦もしくは横に並べたもの 例: x <- 10 # xの値はスカラー y <- c(1,2,4)     # yの値はベクトル

8.2 ベクトル (1) ベクトルをつくるための基本関数: c 例: veca <- c(1,2,3,4,5) 別の方法 : seq rep 例: veca2 <- 1:5 veca4 <- 10:1 veca6 <- seq(1,5,1) vecc <- rep(1,8)

8.2 ベクトル(続き) (2) ベクトルの基本演算 以下ではveca, vecbはベクトル veca <- 1:5 ; vecb <- seq(2,10,2) 加算 例: veca + vecb # =c(3,6,9,12,15) 減算 例: veca – vecb # =c(-1,-2,-3,-4,-5)

8.2.1ベクトルの基本演算(続き) 以下ではveca, vecbはベクトル veca <- 1:5 ; vecb <- seq(2,10,2) 掛け算 例: veca * vecb # =c(2,8,18,32,50) 割算 例: veca / vecb # =c(0.5, 0.5, 0.5, 0.5, 0.5) 内積 例: veca %*% vecb # 110 = sum(veca*vecb)

8.2.1ベクトルの基本演算(続き) 以下ではveca, vecbはベクトル veca <- 1:5 ; vecb <- seq(2,10,2) スカラー倍 例: veca*5 # = c(5,10,15,20,25) サイズが一致しないベクトル同士の足し算 例: veca+c(2,4) # = c(3,6,5,8,7) 警告はでるが1+2,2+4,3+2,4+4,5+2と計算 掛け算の場合も同様

8.2 ベクトル(続き) (3) ベクトルの要素を取り出す veca <- 11:20 一個の値の取り出し veca[2] で2番目の要素 12 が取り出せる 複数の値の取り出し 例: veca[3:7] # = 13:17 例: veca[c(2,4,6,8)] # = c(12,14,16,18)

8.3 行列 行列 縦横にデータの値が並べられたもの 例:n人の人がそれぞれp個の変数の値を持つ ⇒ n x pの行列 行列を作るための関数 matrix, cbind, rbindなど 例: matrix(1:12,nrow=3,ncol=4) matrix(1:12,3,4) matrix(1:12,nrow=3) matrix(1:12,ncol=4) 列方向優先の割り当て 1 4 7 10 2 5 8 11 3 6 9 12

8.3 行列(続き) 行方向優先の割り当て方法 matrix(1:12,nrow=3,ncol=4,byrow=TRUE) 1 2 3 4 5 6 7 8 9 10 11 12

8.3 行列(続き) 以下ではveca, vecbはベクトル veca <- 1:5 ; vecb <- seq(2,10,2) 複数のベクトルを並べて行列を作る * 列ベクトルを横に追加 cbind(veca,vecb) * 行ベクトルを縦に追加 rbind(veca,vecb) 1 2 4 3 6 8 5 10 1 2 3 4 5 6 8 10

8.3 行列(続き) 行列の行や列に名前をつける 行に名前をつける: rownames 列に名前をつける: colnames  例: mata <- matrix(1:6,nrow=2,ncol=3) rownames(mata) <- c(“row1”,”row2”) colnames(mata) <- c(“col1”,”col2”,”col3”) col1 col2 col3 row1 1 3 5 row2 2 4 6

8.3 行列(続き) 行列の四則演算 例: mata <- matrix(1:6,nrow=2,ncol=3) matb <- matrix(3:8,nrow=2,ncol=3) 足し算: mata + matb 引き算: mata – matb 掛け算: mata * matb 割り算: mata / matb 1 3 5 2 4 6 3 5 7 4 6 8 4 8 12 6 10 14 -2 mata - matb = mata + matb =

8.3 行列(続き) 1 3 5 2 4 6 mata = 転置の関数: t 例: t(matb) 行列の積 例: t(matb) %*% mata mata %*% t(matb) 3 5 7 4 6 8 matb = t(matb)= 3 4 5 6 7 8 3*1+4*2= 11 25 39 17 61 23 53 83 t(matb) %*% mata =

8.3 行列(続き) 特別な行列 正方行列 行の数と列の数が等しい (2) 対角行列 非対角要素がすべて0 diag(c(1,2,3)) 4 7 2 5 8 3 6 9 特別な行列 正方行列 行の数と列の数が等しい (2) 対角行列 非対角要素がすべて0 diag(c(1,2,3)) (3) 単位行列 対角要素がすべて1の対角行列   diag(3) 対角要素 1 2 3 1

8.3 行列(続き) matd[2,] matd = matd[,2] matd[2,4] 行列の要素を取り出す 1 6 11 16 21 7 12 17 22 3 8 13 18 23   4 9 14 19 24   5 10 15 20 25 matd[2,] matd = matd[,2] matd[2,4]

8.3 行列(続き) 行列の演算 (1) 行列式 det (2) 逆行列 solve 固有値と固有ベクトル eigen   ただし、逆行列が存在する場合に限る   そうでないとエラーになる 固有値と固有ベクトル eigen   得られるのはlist型のオブジェクト($valuesと$vectorsでそれぞれ固有値と固有ベクトルを得られる)