changing similar numbers in a raw

2 visualizzazioni (ultimi 30 giorni)
nadia nadi
nadia nadi il 3 Apr 2022
Modificato: Arif Hoq il 4 Apr 2022
Dear all,
I have a raw with repeated numbers. I want to change them to different onse exactly like the randperm.
X=[1 2 2 2 3 2 4 2 2 2];
i want to make it
X=[1 2 4 3 7 5 8 6 10 9];
many thanks
  1 Commento
KALYAN ACHARJYA
KALYAN ACHARJYA il 3 Apr 2022
Modificato: KALYAN ACHARJYA il 3 Apr 2022
X=[1 2 2 2 3 2 4 2 2 2];
Desired result? Any issue?
X=randperm(length(X))
X = 1×10
8 5 1 9 6 4 2 3 7 10

Accedi per commentare.

Risposte (2)

nadia nadi
nadia nadi il 3 Apr 2022
Thanks for replying, but i need to keep the numbers 1,3,4 without change their position.
Best

Arif Hoq
Arif Hoq il 4 Apr 2022
Modificato: Arif Hoq il 4 Apr 2022
try this:
X=[1 2 2 2 3 2 4 2 2 2];
a=X(X==2);
b=randperm(length(a));
a=b;
X(X==2)=0;
X(X==0)=a
X = 1×10
1 5 6 2 3 7 4 1 4 3

Categorie

Scopri di più su Programming in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by