Matrix manipulation problem under MATLAB and swapping values

Hi, I have a starting matrix sw =
0.0890 0.5520 0.4880
0.3980 0.3390 0.3860
0.2030 0.2870 0.2950
and I have two classes in this matrix I made a growing sort of the first class and I put them in L1 and descending sort of the second class and I put them in L2 %%I replace the values of the second class with 0's
L1=
0
0
0.287
0.295
0.339
0.386
0.398
0.488
0.552)
and
L2 =
0.203
0.089
0
0
0
0
0
0
0
if L1(1)<L2(1) %%(L1 (1): This is the first element of the L1 list)
so I swap the values in the starting matrix

Answers (1)

sw = [0.0890 0.5520 0.4880
0.3980 0.3390 0.3860
0.2030 0.2870 0.2950]
L1= [0 0 0.287 0.295 0.339 0.386 0.398 0.488 0.552]
L2 = [0.203 0.089 0 0 0 0 0 0 0]
L1([1 2]) = L1([2 1]) %example of swapping elements

6 Comments

but its not clear what you are trying to do
SW contains values of different class
I have sorted the first class values in a growing order and put in a vector and I have sorted the second class values in a decreasing order into another vector
if the big values of class 1 are lower than the small valeus of class 2 I make a permutation in their positions in the initial matrix (sw)
give an example of your desired output
attached  an image that contains an example
What if both of L2 values are larger than the minimum of L1?
I make the comparison only with great value and in an iterative way I am looking for the second small value of class 1 and I compare it with the 2nd big value of class 2 And so on

This question is closed.

Asked:

on 8 Nov 2018

Closed:

on 20 Aug 2021

Community Treasure Hunt

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

Start Hunting!