find the max value in a struct

4 次查看(过去 30 天)
Hi,
I have a struct (attached) and I want to find the max value of the second column in the field score. I have tried this code:
[val,idx] = max([GlobalScore.score])
Error using horzcat
Dimensions of matrices being concatenated are not consistent.
but it gives an error, can you help me? thanks

采纳的回答

Stephen23
Stephen23 2017-5-12
编辑:Stephen23 2017-5-12
Your basic concept of how to do this is okay, you just need to pay more attention to the details, such as the data sizes, and what data classes the data are. In this case you have some character and some numeric data, and they all have different number of rows (so concatenating horizontally would never work).
>> C = vertcat(GlobalScore.score);
>> M = str2double(C(:,1));
>> M(:,2) = vertcat(C{:,2});
>> max(M)
ans =
4.4333e+006 2.5831e-001
Notes:
  1. The first column of data is not numeric, but is stored as character vectors.
  2. Using a structure with just one field is not good program design. It would be simpler to use a cell array.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by