# Swaping two columns randomly picked

3 visualizaciones (últimos 30 días)
Bartosz Bagrowski el 17 de Mayo de 2022
Comentada: Bartosz Bagrowski el 17 de Mayo de 2022
Hi guys,
I would like to swap two columns randomly picked in an array. I wrote such a code and I would be glad if you could help me to find the error:
it's an array q with dimensions 25x5. Later I would like to create two another function for inserting one randomly picked column after the second randomly picked column, I would be thankful if you could check and help me.
w=5
function qnew = Swap(q)
n = w;
i=randsample(n,2) %randomly picking two columns
i1=i(1);
i2=i(2);
qnew(:,i(1))=q(:,i(2));
qnew([i1(:,i(1)) i2(:,i(2))])=q([i2(:,i(2)) i1(:,i(1))]);
disp(qnew);
end
Function definitions in a script must appear at the end of the file.
Move all statements after the "Swap" function definition to before the first local function definition.
##### 0 comentariosMostrar -2 comentarios más antiguosOcultar -2 comentarios más antiguos

Iniciar sesión para comentar.

Torsten el 17 de Mayo de 2022
Editada: Torsten el 17 de Mayo de 2022
A = rand(25,5);
i = randsample(5,2);
v = A(:,i(1));
A(:,i(1)) = A(:,i(2));
A(:,i(2)) = v;
or simply
A = rand(25,5);
i = randsample(5,2);
A(:,[i(1) i(2)]) = A(:,[i(2) i(1)]);
##### 1 comentarioMostrar -1 comentarios más antiguosOcultar -1 comentarios más antiguos
Bartosz Bagrowski el 17 de Mayo de 2022
Thanks, it helped me a lot! And do you have maybe an idea how to insert one randomly picked column after another one randomly picked?

Iniciar sesión para comentar.

### Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

R2021a

### Community Treasure Hunt

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

Start Hunting!

Translated by