table2array转换单元格而不是数值数组MATLAB

时间:2016-01-18 17:29:08

标签: matlab

我正在处理MATLAB表数据类型。
我的数据如下:

+--------+----------------------------------------------------+
| table1 | % 1st table containing some numeric and characters |
+--------+----------------------------------------------------+
| table2 | % 2nd table containing some numeric and characters |
+--------+----------------------------------------------------+
| table3 | % 3rd table containing some numeric and characters |
+--------+----------------------------------------------------+
| table4 | % 4th table containing some numeric and characters |
+--------+----------------------------------------------------+

表的行相同。我想提取表中数据的数字部分,并确保它们不相同。
我做如下:

data1 = table2array(table1(1:6,2:2500)); 
data2 = table2array(table2(1:6,2:2500)); 
data3 = table2array(table3(1:6,2:2500)); 
data4 = table2array(table4(1:6,2:2500)); 

但是,table2array不会为 data1,data2,...,data4 返回矩阵而非单元数据类型,这会使比较部分变得更难。虽然数据是数字的,但返回的是cell数据类型,这对我来说很奇怪。 我以table1的第一列和第二列为例:

表1:

+------+------------------+
| Info | mov_1            |
+------+------------------+
| 'F1' | 11.55            |
| 'F2' | 5.44e+6          |
| 'F3' | 1.5e+7           |
| 'F4' | 0.0011           |
| 'F5' | 0.0062           |
| 'F6' | 0.0513           |
| 'ID' | '0000000089.mp4' |
| 'nF' | 3252             |
| 'pT' | 1354.641         |
+------+------------------+

table1包含许多类似于第2列的列。table2 ... table4具有与table1类似的结构。正如您所看到的,只有 rownames ID部分是使用 table1(1:6,2:2500)时未包含的字符串。

我该如何克服这个问题?任何很酷的想法都会提前得到赞赏。

0 个答案:

没有答案