Main Content

堆叠表变量

在实时编辑器中将多个表变量的值合并到一个表变量中

自 R2020a 起

说明

堆叠表变量任务允许您以交互方式将多个表或时间表变量中的值堆叠到一个变量中。该任务会自动为您的实时脚本生成 MATLAB® 代码。

相关函数

堆叠表变量生成使用 stack 函数的代码。

Stack Table Variables task in Live Editor

打开任务

要在 MATLAB 编辑器中将堆叠表变量任务添加到实时脚本中,请执行以下操作:

  • 实时编辑器选项卡上,选择任务 > 堆叠表变量

  • 在脚本的代码块中,键入相关关键字,例如 stack。从建议的命令自动填充项中选择堆叠表变量

示例

全部展开

此示例说明如何使用堆叠表变量实时编辑器任务来堆叠变量。它从一个输入表中的多个变量中获取值,并将它们合并到输出表中的一个变量中。

首先,加载一个表,其中包含沿美国东海岸的流感发病率估计值。该表包含三个变量,分别包含东北地区 (NE)、中大西洋地区 (MidAtl) 和东南地区 (SE) 几个地区的发病率。(这些数据来自 Google Flu Trends 工程,该工程现已停止。)

load fluByRegion
fluByRegion
fluByRegion=6×4 table
        Month          NE      MidAtl      SE  
    _____________    ______    ______    ______

     October-2005    1.1902    1.1865     1.273
    November-2005     1.361     1.412     1.582
    December-2005    1.5003    1.6043    1.8625
     January-2006    1.7772     1.883     1.954
    February-2006     2.135    2.1227    2.4803
       March-2006    2.2345     1.992    2.0203

将流感发病率数据进行堆叠,使 NEMidAtlSE 变量的流感发病率都放入输出表的一个变量中。

堆叠表变量任务添加到您的实时脚本中。

  • 要将 Month 变量的值复制到输出表的行中,请在任务中从其上方的下拉列表中选择 Constant

  • 要通过将来自 NEMidAtlSE 变量的值堆叠到输出的一个变量中对这些值进行合并,请为每个变量选择 Stack

输出中堆叠变量的名称来自各输入变量名称的组合。

该任务还将输入变量的名称堆叠到一个名为 NE_MidAtl_SE_Indicator 的新变量中。在此示例中,区域名称是输入表中变量的名称。这些名称成为新变量中的数据值,该新变量指示流感率数据的区域。

Live Task
stackedTable=18×3 table
        Month        NE_MidAtl_SE_Indicator    NE_MidAtl_SE
    _____________    ______________________    ____________

     October-2005            NE                   1.1902   
     October-2005            MidAtl               1.1865   
     October-2005            SE                    1.273   
    November-2005            NE                    1.361   
    November-2005            MidAtl                1.412   
    November-2005            SE                    1.582   
    December-2005            NE                   1.5003   
    December-2005            MidAtl               1.6043   
    December-2005            SE                   1.8625   
     January-2006            NE                   1.7772   
     January-2006            MidAtl                1.883   
     January-2006            SE                    1.954   
    February-2006            NE                    2.135   
    February-2006            MidAtl               2.1227   
    February-2006            SE                   2.4803   
       March-2006            NE                   2.2345   
      ⋮

为输出表的变量赋予更有意义的名称。要重命名表变量,请使用 renamevars 函数。

fluRate = renamevars(stackedTable, ...
                     ["NE_MidAtl_SE_Indicator","NE_MidAtl_SE"], ...
                     ["Region","Flu Rate"])
fluRate=18×3 table
        Month        Region    Flu Rate
    _____________    ______    ________

     October-2005    NE         1.1902 
     October-2005    MidAtl     1.1865 
     October-2005    SE          1.273 
    November-2005    NE          1.361 
    November-2005    MidAtl      1.412 
    November-2005    SE          1.582 
    December-2005    NE         1.5003 
    December-2005    MidAtl     1.6043 
    December-2005    SE         1.8625 
     January-2006    NE         1.7772 
     January-2006    MidAtl      1.883 
     January-2006    SE          1.954 
    February-2006    NE          2.135 
    February-2006    MidAtl     2.1227 
    February-2006    SE         2.4803 
       March-2006    NE         2.2345 
      ⋮

相关示例

参数

全部展开

从工作区中所有非空表和时间表的列表中指定输入表或时间表的名称。

为输入表或时间表中的每个变量指定要采取的动作。堆叠变量时,有三种可能的动作:

  • 常量 - 将变量复制到输出表或时间表中。在输出的行中所需的位置复制其值。

  • 堆叠 - 将变量中的值堆叠到输出的一个变量中。例如,如果您选择堆叠三个变量,其所有值都将放入输出的一个变量中。

  • 放弃 - 从输出中排除变量及其值。

版本历史记录

在 R2020a 中推出

全部展开

另请参阅

函数

实时编辑器任务

App