在 matlab 中标记 table 行和列?

label table rows and columns in matlab?

我正在尝试在 matlab 中像这样创建行和变量名称:

labeledtable = table(NaN(4),'RowNames',cellstr(('a':'d')'),'VariableNames',cellstr('e':'h'));

行名称看起来不错,但我希望 e f g 和 h 对应于 table 的四列,而不是 'efgh' 只是所有四列的一个变量名称。如何分别标记每一列?

 %------------

这是我要找的东西:

labeledtable = array2table(NaN(4));
labeledtable.Properties.RowNames = cellstr(('a':'d')');
labeledtable.Properties.VariableNames = cellstr(('e':'h')');

想到两个选项:

  • 像您对 RowNames 所做的那样转置:cellstr(('e':'h')')'
  • 使用num2cellnum2cell('e':'h')

我不确定其中哪一个在速度方面表现更好,但它看起来并不是您的大问题。由于可读性,我会推荐第二个。