如何在MATLAB中向表格末尾添加date_time和cups_out元素?
在MATLAB中向表格末尾添加数据的方法
下面是几种实用的方法,帮你给现有表格添加包含date_time和cups_out的新行:
方法1:直接拼接(兼容所有MATLAB版本)
这是最通用的方式,通过方括号[]将原表格和新行拼接:
% 假设你的原表格变量名为T % 构造新行的表格,确保变量名和原表格一致 new_row = table(datetime('2024-05-20 14:30:00'), 12, 'VariableNames', {'date_time', 'cups_out'}); % 拼接至原表格末尾 T = [T; new_row];
也可以用元胞数组直接构造新行(需保证顺序和原表格列顺序一致):
new_row = {datetime('2024-05-20 14:30:00'), 12}; T = [T; new_row];
方法2:使用addrow函数(MATLAB R2021a及以上版本)
如果你的MATLAB版本较新,addrow函数会更简洁,还能直接指定变量名避免顺序错误:
% 按列顺序添加 T = addrow(T, datetime('2024-05-20 14:30:00'), 12); % 按变量名添加(更稳妥,无需在意列顺序) T = addrow(T, 'date_time', datetime('2024-05-20 14:30:00'), 'cups_out', 12);
方法3:使用vertcat函数
功能和方括号拼接类似,适合更清晰的代码结构:
new_row = table(datetime('2024-05-20 14:30:00'), 12, 'VariableNames', {'date_time', 'cups_out'}); T = vertcat(T, new_row);
注意事项
- 新行的变量名必须和原表格完全一致,数据类型也要匹配(比如
date_time需为datetime类型,cups_out需为数值类型),否则会报错。 - 如果原表格有其他列,新行也需要对应提供这些列的值,或者用
NaN/缺失值填充(取决于列的数据类型)。
内容的提问来源于stack exchange,提问作者david
相关产品推荐
相关产品推荐

