2016-09-29 91 views
0

我想从一个Excel表格中使用Matlab获取一些变量和数字。如何在Matlab中减去两个单元格阵列

下面名为“diffZ_trial1-4”的变量应该通过两列之间的差值(“开始”和“结束”之间的差值)来计算。但是我得到的错误:

Undefined operator '-' for input arguments of type" 'cell'.

而且我在其他地方见过,这可能与这样的事实,我得到{}输出,而不是[],也许我需要使用cell2mat或以某种方式转换的输出。但我一定是做错了,因为它不起作用!

问题:如何计算以下两列之间的差异?

clear all, close all 

[num,txt,raw] = xlsread('test.xlsx'); 



start = find(strcmp(raw,'HNO')); 

finish = find(strcmp(raw,'End Trial: ')); 

%%% TIMELINE EACH TRIAL 

time_trial1 = raw(start(1):finish(1),8); 
time_trial2 = raw(start(2):finish(2),8); 
time_trial3 = raw(start(3):finish(3),8); 
time_trial4 = raw(start(4):finish(4),8); 

%%%MOVEMENT EACH TRIAL 

diffZ_trial1 = raw(start(1):finish(1),17)-raw(start(1):finish(1),11); 
diffZ_trial2 = raw(start(2):finish(2),17)-raw(start(2):finish(2),11); 
diffZ_trial3 = raw(start(3):finish(3),17)-raw(start(3):finish(3),11); 
diffZ_trial4 = raw(start(4):finish(4),17)-raw(start(4):finish(4),11); 
+0

另一个线索可能是“原始”包含所有类型,数字和字符串的数据,也许这不太好用? – Spica

回答