Professional Documents
Culture Documents
MATLABプログラミング入門
MathWorks Japan
アプリケーションエンジニアリング部 (テクニカルコンピューティング)
アプリケーションエンジニア
井原 瑞希
Matrix Laboratory
対話的開発環境
豊富な拡張ライブラリ
使用目的
- 数値解析
- データ解析、可視化
- アルゴリズム開発、プログラミング
- 外部アプリケーションとの連携
2
MATLAB R2014b is Live!
3
R2014b Graphics New Look
44
MATLAB を使用したデータ解析ワークフロー
MATLAB
Statistics Toolbox™
Curve Fitting Toolbox™
処理方法
データへのアクセス アルゴリズムの探求 結果の共有/IP化
ファイル
ドキュメント
データ解析 生成
モデリング
ソフトウェア
アルゴリズム
組み込み開発
開発
C/C++/Javaなど
ハードウェア
アプリケーション
開発
アプリケーション配布
ウェブサービス
JSON
XML
HTML
5
例:自転車レンタルデータの解析
解析の流れ
– データの読み込み
– データ傾向の分析
– モデル式の構築
– プログラム化 自転車レンタル所にはどれくらい
– 文書化 自転車を用意しておけばよい?
自転車のレンタル台数 = f ( 時間, 気温 )
6
自転車レンタル台数のデータ
気温 レンタル数
7
例:自転車レンタルデータの解析
自転車レンタル所にはどれくらい
自転車を用意しておけばよい?
自転車のレンタル台数 = f ( 時間, 気温 )
8
自転車レンタル台数予測のカスタム式
時間による変動
気温による変動
x: 時間 TIPS:
y: 気温 LaTeX で書いた数式を
MATLAB のパブリッシュ機能で画像化
9
MATLAB を使用したデータ解析ワークフロー
MATLAB
Statistics Toolbox
Curve Fitting Toolbox
処理方法
データへのアクセス アルゴリズムの探求 結果の共有/IP化
ファイル
ドキュメント
データ解析 生成
モデリング
ソフトウェア
アルゴリズム
組み込み開発
開発
C/C++/Javaなど
ハードウェア
アプリケーション
開発
アプリケーション配布
ウェブサービス
JSON
XML
HTML
10
NEW
例: Webサービスデータの読み込み
webread 関数を使用して現在の位置から最寄り駅を検索
読み取り形式: テキストベースのデータフォーマット
XML, JSON, CSV, …
使用するAPI: HeartRailsAPI
– URL: http://express.heartrails.com/api/
– リクエストパラメタ
パラメタ 値 説明
method getStations メソッド名
x double 最寄駅の情報を取得したい場所の経度
y double 最寄駅の情報を取得したい場所の緯度
11
NEW
例: Webサービスデータの読み込み
XMLの場合
http://express.heartrails.com/api/xml?
method=getStations & x=139.731434 & y=35.674166
駅だけでなく、別のAPIで
コンビニなども検索可能
12
MATLAB を使用したデータ解析ワークフロー
MATLAB® Compiler™
処理方法
データへのアクセス アルゴリズムの探求 結果の共有/IP化
ファイル
ドキュメント
データ解析 生成
モデリング
ソフトウェア
アルゴリズム
組み込み開発
開発
C/C++/Javaなど
ハードウェア
アプリケーション
開発
アプリケーション配布
ウェブサービス
JSON
XML
HTML
13
データ解析で使える機能
他アプリケーションとのデータや結果の共有
MATLABユーザとのMATLABコード共有
– MATLAB ファイル
非MATLABユーザとのMATLABアプリケーション共有
– 実行形式 (.exe)
– C/C++ 共有ライブラリ (.lib/.dll)
– ソフトウェアコンポネント
MATLAB Compiler
再配布は無償
.dll
.exe .lib
Excel Java Web .NET
14
MATLAB を使用したデータ解析ワークフロー
処理方法
データへのアクセス アルゴリズムの探求 結果の共有/IP化
ファイル
ドキュメント
データ解析 生成
モデリング
ソフトウェア
アルゴリズム
組み込み開発
開発
C/C++/Javaなど
ハードウェア
アプリケーション
開発
アプリケーション配布
ウェブサービス
JSON
XML
HTML
15
まとめ
ウェブサービスからのデータの読み込み
日時を扱う関数の紹介
– month: 月番号と月名を出力
– weekday: 曜日を出力
– isweekend: 週末かどうかを0/1で出力
ダイナミックに変化する日時データのグラフ
varfun を使用したテーブル型変数への関数の適用
論理インデクスを使用したデータ抽出
GUI ツールと MATLAB プログラム生成
TeX を含むレポート作成
アプリケーション配布
16
まとめ
ウェブサービスからのデータの読み込み
日時を扱う関数の紹介
– month: 月番号と月名を出力
– weekday: 曜日を出力
– isweekend: 週末かどうかを0/1で出力
ダイナミックに変化する日時データのグラフ
varfun を使用したテーブル型変数への関数の適用
論理インデクスを使用したデータ抽出
GUI ツールと MATLAB プログラム生成
TeX を含むレポート作成
アプリケーション配布
17
まとめ
ウェブサービスからのデータの読み込み
日時を扱う関数の紹介
– month: 月番号と月名を出力
– weekday: 曜日を出力
– isweekend: 週末かどうかを0/1で出力
ダイナミックに変化する日時データのグラフ
varfun を使用したテーブル型変数への関数の適用
論理インデクスを使用したデータ抽出
GUI ツールと MATLAB プログラム生成
TeX を含むレポート作成
アプリケーション配布
18
Training Services
MATLAB トレーニング
EXPO 展示コーナーでトレーニングテキストを閲覧可能です!
19
MathWorks展示部分
Drone
Nao
TurtleBot
Mars Rover
20