Using accumarray with nested inline function
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Pete sherer
le 24 Mai 2021
Réponse apportée : Steven Lord
le 25 Mai 2021
Hi
I have below data and would like to use accumarray to perform calculation with inline functions
locOut = @(x) matches( x,"Gross", 'Ignorecase',true); % identifying rows for Gross data
NetCalc= @( flag, loss) ( loss( locOut(flag)) - sum( loss(~locOut(flag))));
Calculating Net Loss = Gross - sum( other rows)
[ uniqLayer,~,JGrp] = unique( LayerId));
final = accumarray( JGrp, loss, [], @PRA_GetNetLoss( flag, loss) ); % Not working
flag = {'xIGW','Gross','QS','BH','Fac','QS2', 'Gross','BH'}';
loss = [1 2 3 6 5 6 10 20];
layerID = [ 111 111 111 111 111 111 222 222]
0 commentaires
Réponse acceptée
Steven Lord
le 25 Mai 2021
@PRA_GetNetLoss( flag, loss)
This is not syntacticallly valid in MATLAB. Make this an anonymous function like you did with locOut and NetCalc.
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Gravitation, Cosmology & Astrophysics dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!