2014-02-26 49 views
1

我有一个矩阵作为MATLAB得到错误“单元格内容从非单元阵列对象引用”

y = auto air condit freon articl hvx new cso uiuc edu tspila uxa cso uiuc edu tim spila romulan write articl apr ntuix ntu mgqlu ntuix ntu max write work ga solid adsorpt air con system for auto applic thi kind system energi for regener adsorb exhaust ga interest thi mail email follow thi thread discuss prospect thi technolog bite thi suppos work tim year ago demonstr cold air system us air call rovax unit work short come seal technolog todai 

< <大小(Y)

ans = 

1 442 

也我还有一个矩阵tokenVector如

tokenVector = 

第1列至第6列

'abandon' 'abomin' 'aborigin' 'abraham' 'abruptli' 'absenc' 

列7至13

'absolut' 'absurd' 'abus' 'academi' 'acc' 'accept' 'accesori' 

,当我使用ismember(y,tokenVector)然后我得到一个错误:

"Cell contents reference from a non-cell array object". 

我没有错误获取意义。请帮助我是matlab新手。

回答

2

我假设你y只是即声明为

y = 'auto air condit freon ar...' 

在这种情况下,你只需要调用strsplit首先将它拆分成词的细胞基质的字符串:

ismember(strsplit(y,' '), tokenVector) 

错误告诉你,你需要使用cell array作为输入,而不是简单的char数组。基于特定的分隔符,strsplit函数会将char数组拆分为单元格数组,在这种情况下,该空间为' '