MATLAB如何把表格转为数组?

2025-11-20 17:26:14

1、对于一个有多列同类型数据的普通表格,直接使用table2array即可得到对应数组。

数组中的列就是表格中的列拼接而成。

MATLAB如何把表格转为数组?

2、表格中的每个变量列不一定是列向量,有可能是宽度大于1的矩阵。

此时使用table2array时,会将这些矩阵横向拼接起来。

MATLAB如何把表格转为数组?

3、如果各列的数据类型不同,转化后的数组会取所谓的“dominent type”.

比如,single和double类型都有的话,转化后为single.

single,double,int8都有的话,转化后为int8.

MATLAB如何把表格转为数组?

4、但是,如果有的列是数值数组,有的列却是元胞数组(字符串组成的或其它),则无法将它们合并。

MATLAB如何把表格转为数组?

5、此时,可以将输入参数改为T(:,[1,3]),即表格T第一列和第三列组成的子表格。

此时可以转化成功。

MATLAB如何把表格转为数组?

6、如果表格中的每列都是高维数组,则会按照如图的拼接方式进行拼接。

返回的数组是同样维度的高维数组。

MATLAB如何把表格转为数组?

7、此时要注意的事项有二:

一是所有表变量必须有相同的维数,

二是所有表变量除了第二维之外,必须长度相同。(第二维是表变量的合并方向所以可以长度不同)

MATLAB如何把表格转为数组?

MATLAB如何把表格转为数组?

8、另外,要吧表格转成数组,也可以使用大括号。

T{:,:}等价于table2array(T)

T{:,[1,3]}则相当于取出T的第一列和第三列进行转换。

MATLAB如何把表格转为数组?

1、转化为元胞数组非常好理解,直接使用table2cell就可以转化,将表格的列变量都转成元胞数组再拼接起来。

MATLAB如何把表格转为数组?

2、使用T.Properties.VariableNames可以获取列变量名称组成的元胞行向量。

因此,如图代码可以把列变量名拼接在第一行。

MATLAB如何把表格转为数组?

3、T.Properties.RowNames可以获取行名称组成的元胞列向量。可以使用如图代码将行名称拼在第一列。

MATLAB如何把表格转为数组?

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢