Azzera filtri
Azzera filtri

how to select two arrays from a group of four

1 visualizzazione (ultimi 30 giorni)
i have 4 arrays and i need to square each element then find the total. then the 2 arrays that have to lowest total get selected and assigned a value eg, u3
would love some help from a true matlab master

Risposta accettata

Thomas Satterly
Thomas Satterly il 13 Nov 2019
To find the sum square of an array:
sumSquared = sum(array.^2);
If you have your arrays all together in a matrix:
% If each array is a colum of the matrix
sumSquaredEachArray = sum(matrix.^2, 1);
% If each array is a row of the matrix
sumSquaredEachArray = sum(matrix.^2, 2);
For finding the two lowest scores, let's assume that you have the scores in an array called "sumSquaredEachArray" (which would happen automatically if you have your arrays organized in a matrix)
% Get the order of lower to highest scores
[~, order] = sort(sumSquaredEachArray);
% Select the first two scores from the sorted order, which would be the lowest two
lowestTwoScores = order(1:2);
% Set those scores to "u3"
sumSquaredEachArrau(lowestScores) = u3;

Più risposte (0)

Categorie

Scopri di più su Shifting and Sorting Matrices in Help Center e File Exchange

Prodotti


Release

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by