このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
Simulink.SimulationData.Dataset
ログ記録されたシミュレーション データへのアクセスとシミュレーション入力データのグループ化
説明
Simulink.SimulationData.Dataset
オブジェクトは、関連するデータをグループ化します。ログ記録されたシミュレーション結果は、多くの場合、Dataset
オブジェクトにグループ化されます。Inport ブロックまたは Signal Editor ブロックを使用して初期状態を読み込むときや外部入力データを読み込むときに、Dataset
オブジェクトを使用してシミュレーション入力データをグループ化することもできます。
シミュレーション データのログ記録で作成される Dataset
オブジェクトには 1 つ以上の要素が含まれます。それぞれの要素に、ログ記録された 1 つの信号、出力、データ ストア、または状態のデータが格納されます。各要素はオブジェクトであり、オブジェクトのタイプは格納されるデータによって異なります。
信号と出力 —
Simulink.SimulationData.Signal
オブジェクト状態と最終状態 —
Simulink.SimulationData.State
オブジェクトデータ ストア —
Simulink.SimulationData.DataStoreMemory
オブジェクト
シミュレーション入力データをグループ化する Dataset
オブジェクトを作成する場合は、各要素に信号、バス、またはバス配列のデータが格納されます。使用する読み込み方法でサポートされる任意の形式でデータを追加できます。
入力のタイプ | データ形式 |
---|---|
スカラー、ベクトル、または多次元信号 |
|
バス |
|
バス配列 |
|
関数呼び出し信号 |
|
作成
シミュレーション データのログ記録では、多くの場合に Simulink.SimulationData.Dataset
オブジェクトが作成されます。これには次の場合が含まれます。
信号ログを使用してデータをログ記録する。
[セータセット]
形式を使用して出力、状態、または最終状態をログ記録する。データ ストアをログ記録する。
Record ブロックを使用してワークスペースまたは MAT ファイルにデータをログ記録する。
Scope ブロックを使用して
[データセット]
形式でデータをログ記録する。Floating Scope または Scope Viewer を使用してデータをログ記録する。
モデルに対する外部入力データを Dataset
オブジェクトにグループ化するには、次の方法を使用できます。
空の
Dataset
オブジェクトを作成し、関数addElement
を使用して入力データを追加します。createInputDataset
を使用して、モデルのルートレベルのそれぞれの Inport ブロックまたは In Bus Element ブロックの要素を格納するDataset
オブジェクトを作成します。次に、各要素のデータを指定します。信号エディターを使用して、シミュレーション入力データを格納する
Dataset
オブジェクトを対話形式で作成および編集します。詳細については、信号データの作成と編集を参照してください。
また、別の形式を使用するデータを [データセット]
形式を使用するように変換して Dataset
オブジェクトを作成することもできます。すべてのデータを共通の形式にすることで後処理が簡単になります。詳細については、timeseries オブジェクトから Dataset オブジェクトへの変換を参照してください。
構文
説明
は、要素を追加できる名前のない空の ds
= Simulink.SimulationData.DatasetDataset
オブジェクトを作成します。この構文は、Inport ブロックまたは In Bus Element ブロックを使用して読み込む外部入力データを格納する Dataset
オブジェクトを手動で作成する場合に使用します。
は、データ ds
= Simulink.SimulationData.Dataset(dataToConvert
)dataToConvert
を格納する 1 つ以上の要素を含む名前のない Dataset
オブジェクトを作成します。この構文は、別の形式を使用するデータを [データセット]
形式を使用するように変換する場合に使用します。詳細については、timeseries オブジェクトから Dataset オブジェクトへの変換を参照してください。
変換プロセスでは、一度に 1 つの入力に対するデータのみが変換されます。複数の変数に対するデータを変換するには、各変数を一度に 1 つずつ変換してから、結果の Dataset
オブジェクトを関数 concat
を使用して結合します。
は、データ ds
= Simulink.SimulationData.Dataset(dataToConvert
,"DatasetName",dsName
)dataToConvert
を格納する 1 つ以上の要素を含む dsName
で指定された名前の Dataset
オブジェクトを作成します。この構文は、別の形式を使用するデータを [データセット]
形式を使用するように変換する場合に使用します。詳細については、timeseries オブジェクトから Dataset オブジェクトへの変換を参照してください。
入力引数
出力引数
プロパティ
オブジェクト関数
addElement | Simulink.SimulationData.Dataset オブジェクトの最後に要素を追加 |
concat | Simulink.SimulationData.Dataset オブジェクトを別の Dataset オブジェクトに連結 |
exportToPreviousRelease | 任意のリリースで開くことができる MAT ファイルに Dataset オブジェクトを保存 |
extractTimetable | Extract data from Simulink.SimulationData.Dataset or
Simulink.SimulationData.Signal objects into timetables |
find | Simulink.SimulationData.Dataset オブジェクトから要素または要素の集合を取得 |
get | Simulink.SimulationData.Dataset オブジェクトから要素または要素の集合を取得 |
getElementNames | Simulink.SimulationData.Dataset オブジェクト内のすべての要素の名前を返す |
numElements | Simulink.SimulationData.Dataset オブジェクトの要素数を取得 |
plot | シミュレーション データ インスペクターでデータをプロットする |
removeElement | Remove element from Simulink.SimulationData.Dataset
object |
setElement | 指定されたインデックスに格納された Simulink.SimulationData.Dataset オブジェクトの要素を変更 |
例
ヒント
中かっこ (
{}
) を使用して、Dataset
オブジェクトの要素のインデックスを指定してアクセス、追加、変更できます。Dataset
オブジェクトの要素の名前を指定してアクセス、追加、変更するには、関数getElement
、addElement
、setElement
を使用します。Dataset
オブジェクトを使用してシミュレーション入力をグループ化する場合、信号エディターまたは Signal Editor ブロックを使用して、シミュレーションの入力を提供するDataset
オブジェクトを簡単に変更できます。ルートレベルの Inport ブロックを使用して
Dataset
オブジェクトから外部入力データを読み込む場合、ルート Inport マッパーを使用して、ブロック名、ブロック パス、信号名、または端子の順序を指定してDataset
オブジェクトの各要素を Inport ブロックにマップできます。データをマップする独自の関数を記述することもできます。詳細については、ルート Inport 信号データのマッピングを参照してください。Dataset
オブジェクトのデータを MAT ファイルに保存する際、Dataset
オブジェクトの内容が大きすぎてメモリに収まらない場合は Version 7.3 の MAT ファイルに保存することを検討します。データ処理やビッグ データの読み込み用に、データをメモリに読み込む代わりに MAT ファイル内のDataset
オブジェクトを参照するSimulink.SimulationData.DatasetRef
を作成できます。詳細については、シミュレーションのためのビッグ データの読み込みを参照してください。以前のリリースで開くことができる MAT ファイルに
Dataset
オブジェクトを保存するには、関数save
の代わりに関数exportToPreviousRelease
を使用します。Simulink.io.FileType
クラスを使用して、ベース ワークスペース、モデル ワークスペース、または信号エディターのDataset
オブジェクトにファイルからデータをインポートする独自のリーダーを記述できます。詳細については、信号エディターにインポートするカスタム ファイル タイプの作成を参照してください。
バージョン履歴
R2011a で導入