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