Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

addvars

将变量添加到表或时间表中

说明

示例

T2 = addvars(T1,var1,...,varN) 将由 var1,…,varN 指定的变量添加到 T1 中最后一个变量的右侧。输入参数 var1,…,varN 可以包含任何类型、表和时间表的数组。所有输入参数必须具有相同的行数。

示例

T2 = addvars(T1,var1,...,varN,'Before',location) 将变量插入到由 location 指示的表变量的左侧(如图所示)。您可以将 location 指定为变量名称,也可将其指定为数值或逻辑索引。

示例

T2 = addvars(T1,var1,...,varN,'After',location) 将变量插入到 location 指定的表变量的右侧。

示例

T2 = addvars(___,'NewVariableNames',newNames) 使用由 newNames 指定的名称重命名添加到 T2 中的变量。newNames 中的名称数量必须与添加的变量数量相同。您可以将此语法与前面语法中的任何输入参数结合使用。

示例

全部折叠

创建一个表。然后从工作区向此表中添加变量。

patients.mat 文件中加载数组。创建包含患者姓名、年龄、身高和体重的表。然后显示前三行。

load patients
T1 = table(LastName,Age,Height,Weight);
head(T1,3)
ans=3×4 table
      LastName      Age    Height    Weight
    ____________    ___    ______    ______

    {'Smith'   }    38       71       176  
    {'Johnson' }    43       69       163  
    {'Williams'}    38       64       131  

将工作区变量 GenderSmoker 添加到表中。

T2 = addvars(T1,Gender,Smoker);
head(T2,3)
ans=3×6 table
      LastName      Age    Height    Weight      Gender      Smoker
    ____________    ___    ______    ______    __________    ______

    {'Smith'   }    38       71       176      {'Male'  }    true  
    {'Johnson' }    43       69       163      {'Male'  }    false 
    {'Williams'}    38       64       131      {'Female'}    false 

创建一个表。然后在表中指定的位置之前和之后插入变量。

patients.mat 文件中加载数组。创建包含患者姓名和性别的表。然后显示前三行。

load patients
T1 = table(LastName,Gender);
head(T1,3)
ans=3×2 table
      LastName        Gender  
    ____________    __________

    {'Smith'   }    {'Male'  }
    {'Johnson' }    {'Male'  }
    {'Williams'}    {'Female'}

将工作区变量 Age 插入到表变量 Gender 之前。要通过名称引用表变量,请将名称指定为字符向量。

T2 = addvars(T1,Age,'Before','Gender');
head(T2,3)
ans=3×3 table
      LastName      Age      Gender  
    ____________    ___    __________

    {'Smith'   }    38     {'Male'  }
    {'Johnson' }    43     {'Male'  }
    {'Williams'}    38     {'Female'}

Age 后插入更多变量。由于 Age 是 T2 中的表变量,因此将其名称指定为字符向量。

T3 = addvars(T2,Height,Weight,'After','Age');
head(T3,3)
ans=3×5 table
      LastName      Age    Height    Weight      Gender  
    ____________    ___    ______    ______    __________

    {'Smith'   }    38       71       176      {'Male'  }
    {'Johnson' }    43       69       163      {'Male'  }
    {'Williams'}    38       64       131      {'Female'}

在第一个表变量后插入 Smoker。您可以按变量在表中的位置而不是按名称指定变量。

T4 = addvars(T3,Smoker,'After',1);
head(T4,3)
ans=3×6 table
      LastName      Smoker    Age    Height    Weight      Gender  
    ____________    ______    ___    ______    ______    __________

    {'Smith'   }    true      38       71       176      {'Male'  }
    {'Johnson' }    false     43       69       163      {'Male'  }
    {'Williams'}    false     38       64       131      {'Female'}

创建一个表。向表中添加变量并为它们指定新名称。

首先,根据工作区变量创建一个表。

load patients
T1 = table(LastName,Age,Gender,Smoker);
head(T1,3)
ans=3×4 table
      LastName      Age      Gender      Smoker
    ____________    ___    __________    ______

    {'Smith'   }    38     {'Male'  }    true  
    {'Johnson' }    43     {'Male'  }    false 
    {'Williams'}    38     {'Female'}    false 

DiastolicSystolic 合成一个两列矩阵。将新的表变量命名为 BloodPressure

T2 = addvars(T1,[Diastolic Systolic],'NewVariableNames','BloodPressure');
head(T2,3)
ans=3×5 table
      LastName      Age      Gender      Smoker    BloodPressure
    ____________    ___    __________    ______    _____________

    {'Smith'   }    38     {'Male'  }    true        93    124  
    {'Johnson' }    43     {'Male'  }    false       77    109  
    {'Williams'}    38     {'Female'}    false       83    125  

添加 HeightWeight 作为新的表变量。将它们重命名为 InchesPounds

T3 = addvars(T2,Height,Weight,'Before','Smoker','NewVariableNames',{'Inches','Pounds'});
head(T3,3)
ans=3×7 table
      LastName      Age      Gender      Inches    Pounds    Smoker    BloodPressure
    ____________    ___    __________    ______    ______    ______    _____________

    {'Smith'   }    38     {'Male'  }      71       176      true        93    124  
    {'Johnson' }    43     {'Male'  }      69       163      false       77    109  
    {'Williams'}    38     {'Female'}      64       131      false       83    125  

输入参数

全部折叠

输入表,指定为表或时间表。

要添加到输出表中的变量,指定为数组、表和时间表。由 var1,...,varN 指定的所有变量都必须与输入表 T1 具有相同的行数。

示例: T2 = addvars(T1,A) 将工作区变量 A 插入到最后一个表变量的右侧。

示例: T2 = addvars(T1,X,Y,Z) 插入工作区变量 XYZ

要插入所添加的变量的位置,指定为字符向量、字符串标量、整数或逻辑数组。

  • 如果 location 是字符向量或字符串标量,则它是输入表 T1 中变量的名称。

  • 如果 location 是整数 n,则它指定 T1 中的第 n 个变量。

  • 如果 location 是逻辑数组,其第 n 个元素为 1 (true),则它指定 T1 中的第 n 个变量。location 的所有其他元素必须为 0 (false)。

示例: T2 = addvars(T1,Latitude,'Before','Longitude') 将工作区变量 Latitude 插入到名为 Longitude 的表变量的左侧。

示例: T2 = addvars(T1,Y,Z,'After','X') 将工作区变量 YZ 插入到名为 X 的表变量的右侧。

添加的变量的名称,指定为字符向量、字符向量元胞数组或字符串数组。

示例: T2 = addvars(T1,lat,lon,'NewVariableNames',{'Latitude','Longitude'}) 插入工作区变量 latlon,并将相应的表变量命名为 'Latitude''Longitude'

局限性

  • 需要对输入名称 'Before''After''NewVariableNames' 使用单引号。为了避免与变量输入混淆,对于这些名称,请不要使用双引号字符串标量(如 "Before")。

扩展功能

C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。

在 R2018a 中推出