Select first max value of each cell at a cell array.
6 次查看(过去 30 天)
显示 更早的评论
Hi!I have a cell array named "GroupyDir" nx1 which has specified number of n cells at each run of my code.I need to make a vector with max values of each cell, which seems easy, but the problem is that I have the maximum value at 2 spots in some cells.I need my code to select the first appearence of the max value.I also need the index of the value selected at each cell.How can I do that?
I use this loop.
maxval=zeros(length(GroupyDir),1); maxposition=zeros(length(GroupyDir),1);
for i = 1:length(GroupyDir) maxval(i)=max(GroupyDir{i}(:,1)); maxposition(i)=GroupyDir{i}(find([GroupyDir{i}]==maxval(i)),2); end
PS:GroupyDir's cells have 2 columns.The first has some measurements and the second their indices at the time series I use as input data at my code.Thnx in advance.
0 个评论
采纳的回答
Azzi Abdelmalek
2014-5-2
编辑:Azzi Abdelmalek
2014-5-2
a={[2 4 2 3 4] [0 2 6 4 0 6 1]}
n=numel(a);
maxval=zeros(1,n);
idx=zeros(1,n);
for k=1:numel(a)
[ii,jj]=max(a{k})
idx(k)=jj
maxval(k)=ii
end
0 个评论
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!