vertcat error while using splitapply

AA = csvread('temp.csv');
YA = unique(AA(:,1));
GA = findgroups(AA(:,1));
SA = splitapply(@max,AA(:,4:13),GA);
AM = [YA SA];
I am trying to get annual maximum value for the given data but i am getting this error while running the code. The code is working perfectly fine for my other station data. Help me
Error using vertcat
Dimensions of arrays being concatenated are not consistent.
Error in splitapply>localapply (line 253)
finalOut{curVar} = vertcat(funOut{:,curVar});
Error in splitapply (line 132)
varargout = localapply(fun,splitData,gdim,nargout);

 Risposta accettata

Jan
Jan il 16 Mar 2021
Modificato: Jan il 16 Mar 2021
@max calculates the maximum over the 1st non-singleton dimension. If the input is a matrix, this is the first dimension, but if a row vector is applied, it is the 2nd dimension. So you have to specify the dimension explicitly:
SA = splitapply(@(x) max(x, [], 1), AA(:, 4:13), GA);

Più risposte (0)

Categorie

Prodotti

Release

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by