Main Content

get

从数据集获取元素或元素集合

语法

element = get(dataset,index)
element = get(dataset,name)
element = get(dataset,{name})

说明

element = get(dataset,index) 返回对应于 index 的元素。getElement 方法使用与 get 方法相同的语法和行为。

element = get(dataset,name) 返回其名称与 name 匹配的元素。当 name 位于元胞数组中时,返回其名称与 name 匹配的元素的索引。

element = get(dataset,{name}) 在只有一个元素名称匹配时返回单个元素,如果存在多个具有此名称的元素,则返回 SimulationData.Dataset

如果您使用将数据集数据记录到文件创建 MAT 文件,请使用 getAsDatastore 快速访问数据。

输入参数

全部展开

要从中获取元素的数据集。

要获取的元素的索引值。索引反映了数据集元素的索引值。

数据集元素的名称,指定为:

  • 反映数据集元素名称的字符数组

  • 包含一个字符向量的元胞数组。要返回可以包含一个元素的 SimulationData.Dataset object,请使用此格式。编写脚本时,请考虑这种形式。

输出参数

全部展开

get 方法查找的元素。

  • 如果 index 是数据集后的第一个参数,此方法将返回 index 处的元素。

  • 如果 name 是数据集后的第一个参数:

    • 如果此方法找到一个元素,则返回该元素。

    • 如果此方法找到多个元素,则返回包含这些元素的数据集。

    • 如果此方法找不到元素,则返回空对象。

示例

全部展开

访问 ex_bus_logging 模型的顶层模型中的 Simulink.SimulationData.Dataset 元素。信号记录数据集为 topOut

open_system(docpath(fullfile(docroot,'toolbox','simulink',...
'examples','ex_bus_logging')));
open_system(docpath(fullfile(docroot,'toolbox','simulink',...
'examples','ex_mdlref_counter_bus')));
sim('ex_bus_logging')
topOut
topOut = 

  Simulink.SimulationData.Dataset
  Package: Simulink.SimulationData

  Characteristics:
              Name: 'topOut'
    Total Elements: 4

  Elements:
    1: 'COUNTERBUS'
    2: 'OUTPUTBUS'
    3: 'INCREMENTBUS'
    4: 'inner_bus'

  -Use get or getElement to access elements by index, name or 
   block path.
  -Use addElement or setElement to add or modify elements.

  Methods, Superclasses

如果第一个参数是数值,则访问索引处的元素。

el = logsout.get(1);

访问名称与 name 匹配的元素。

el = logsout.get('name');

如果第一个参数是将字符向量作为第一个元素的元胞数组,则返回数据集。

ds = logsout.get({'my_name'}); 

替代方法

您可以使用花括号简化索引语法以获取数据集中的元素,而不是使用 getgetElement。索引必须是不大于变量中元素数的标量。例如,获取 logsout 数据集的第二个元素。

logsout{2}

此外,还可以使用 find 方法从数据集中获取一个或一组元素。

版本历史记录

在 R2011a 中推出