Creare matrice di numeri interi random senza duplicati

di il
2 risposte

Creare matrice di numeri interi random senza duplicati

Ho necessità di creare una matrice (5x96) di numeri random [1,480] senza duplicati. Se utilizzo il metodo

for k=1:45
mat(k,:)=randsample(1:480,96);
end

riesco ad evitare i duplicati sulla singola riga della matrice. Ma se volessi proprio evitare la presenza di duplicati nell'intera matrice come dovrei procedere?

Grazie

2 Risposte

  • Re: Creare matrice di numeri interi random senza duplicati

    In generale puoii creare un vettore (1 x n) e poi usare la funzione reshape per trasformarlo in una matrice.

    Se ho capito bene, però,, devi creare 480 numeri random compresi tra 1 e 480. Se è così basta creare un vettore v=1:480 quindi usare la funzione randperm per modificare la sequenza (rendendola, così, "random") e poi la funzione reshape per convertire il vettore in una matrice.
  • Re: Creare matrice di numeri interi random senza duplicati

    Grazie mille!
Devi accedere o registrarti per scrivere nel forum
2 risposte