randperm and sorting array

9 visualizaciones (últimos 30 días)
maharani meidy
maharani meidy el 25 de Oct. de 2017
Comentada: maharani meidy el 25 de Oct. de 2017
as example :
A = [8 9 0]
Perm1 = randperm(length(A));
B= A(:,Perm1);
B_eks=B
[val_sort, id_sort] = sort(Perm1);
A_eks = B_eks(:,id_sort);
i want it for looping, so A_eks(:,:,1) = [8 9 0],;A_eks(:,:,2) = [8 9 0],A_eks(:,:,2) = [8 9 0],A_eks(:,:,4) = [8 9 0], i have try like this:
for i=1:4
Perm1(:,:,i) = randperm(length(A));
B(:,:,i)= A(:,Perm1(:,:,i));
B_eks(:,:,i)=B(:,:,i)
end
for k=1:4
[val_sort, id_sort] = sort(Perm1(:,:,k));
A_eks(:,:,k) = B_eks(:,id_sort);
end
but it didn't work like i want, what should i do ?
  6 comentarios
KSSV
KSSV el 25 de Oct. de 2017
If you want it to be same..keep it same....why to run all the stuff? Using randperm is good if you want to permute array randomly.
maharani meidy
maharani meidy el 25 de Oct. de 2017
@KSSV : well.. i want it to be more secure than just keep it the same...^^

Iniciar sesión para comentar.

Respuesta aceptada

KL
KL el 25 de Oct. de 2017
Change
A_eks(:,:,k) = B_eks(:,id_sort);
to
A_eks(:,:,k) = B_eks(:,id_sort,k);

Más respuestas (0)

Categorías

Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by