String matching and data extract

Hello, I am trying to match two string arrays and extract a matrix of datas by using the results. When I try to do, I have this error. "Improper assignment with rectangular empty matrix" My code is
for i=1:length(A)
I = strmatch(A(i), B, 'exact');
unique_data_(i) = max(Data(I,:));
end
How can I do my work?
Thank you, Have a good day

回答 (1 件)

Guillaume
Guillaume 2016 年 5 月 18 日

0 投票

I've never seen that exact error message (which version of matlab?) but your code is certainly going to produce an error if there is no match for an element of A since you'll try to assign empty to a scalar. And if there is more than one match and Data has more than one column, max(Data(I, :) is going to return a vector, which will also fail to be assigned to a scalar.
How to fix that depends on what you want to do in either case.
Also matlab tells me that "strmatch is not recommended. [...] To find an exact match for a string, use strcmp." Certainly, the way you're using it strcmp would actually be better.

カテゴリ

ヘルプ センター および File ExchangeCharacters and Strings についてさらに検索

タグ

質問済み:

2016 年 5 月 18 日

回答済み:

2016 年 5 月 18 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by