Hvordan vælger man tilfældige rækker fra en matrix i MATLAB?

Hvordan Vaelger Man Tilfaeldige Raekker Fra En Matrix I Matlab



MATLAB er et programmeringssprog og numerisk computermiljø, der kan designe algoritmer og udføre matematiske beregninger. MATLAB giver brugerne mulighed for at oprette og udføre matematiske beregninger på matricer. Her vil vi diskutere, hvordan vi tilfældigt kan vælge rækkerne fra en matrix i MATLAB.

Metoder til at vælge tilfældige rækker fra en matrix i MATLAB

Der er flere metoder i MATLAB, hvor vi kan vælge tilfældige rækker fra en matrix. Nu vil vi dække følgende måder at vælge tilfældige rækker fra matrixen på:

Metode 1: Brug af randperm-funktionen

Randperm-funktionen genererer en liste over tal fra 1 til n i tilfældig rækkefølge. Disse tal er organiseret som en rækkevektor. Vi kan bruge denne funktion til at generere tilfældige rækkeindekser og derefter bruge disse indekser til at vælge rækker fra vores matrix.







Eksempel

Nedenfor MATLAB-koden vælger 2 tilfældige rækker fra matrix A:



A = rand ( 10 , 5 )

% Generer en tilfældig permutation af rækkeindekserne

idx = strand perm ( størrelse ( EN, 1 ) ) ;

% Vælg de tilfældige 2 rækker af A

B = A ( idx ( 1 : 2 ) , : )



Metode 2: Brug af randsample-funktionen

Funktionen tilfældig stikprøve genererer en tilfældig stikprøve af elementer fra en specificeret matrix. For at vælge tilfældige rækker fra en matrix kan du bruge funktionen tilfældig stikprøve med muligheden for rækker.





Vi kan bruge denne funktion til at generere tilfældige rækkeindekser og derefter bruge disse indekser til at vælge rækker fra vores matrix.

Eksempel

Nedenfor MATLAB-koden vælger 2 tilfældige rækker fra matrix A:



A = rand ( 10 , 5 )

% Generer tilfældige rækkeindekser og vælg tilfældige rækker

idx = tilfældig prøve ( størrelse ( EN, 1 ) , 2 ) ;

B = A ( idx,: )

Metode 3: Brug af datasample-funktionen

Datasample-funktionen returnerer en tilfældig stikprøve af data fra et inputdatasæt. Vi kan bruge denne funktion til direkte at vælge tilfældige rækker fra vores matrix. Datasample-funktionen er en mere avanceret version af randsample-funktionen.

Eksempel

Nedenfor MATLAB-koden vælger 3 tilfældige rækker fra matrix A:

% Opret en 5x3 matrix

A = [ 1 2 3 ; 4 5 6 ; 7 8 9 ; 10 , elleve , 12 ; 13 , 14 , femten ]

% Vælg tilfældige rækker

random_rows = datasample ( EN, 3 )

Metode 4: Brug af randi()-funktionen

Randi()-funktionen er en MATLAB-funktion, der giver os mulighed for at generere tilfældige heltal fra et givet område. I forbindelse med at vælge tilfældige rækker fra en matrix, kan vi bruge funktionen randi() til at generere tilfældige rækkeindekser.

Syntaks

Syntaksen for randi()-funktionen er:

randi ( n )

Her repræsenterer n den øvre grænse for det område, hvorfra tilfældige heltal genereres. Randi() giver os et tilfældigt heltal mellem 1 og n.

Eksempel

Her er en simpel MATLAB-eksempelkode, der demonstrerer brugen af ​​funktionen randi() til at vælge to tilfældige rækker fra en matrix:

% Opret en 3x3 magisk firkant

magicSquare = magi ( 3 )

% Generer to tilfældige rækkeindekser ved hjælp af randi()

randomRow1 = randi ( 3 ) ;

randomRow2 = randi ( 3 ) ;

% Vælg de tilfældige rækker fra den magiske firkant

udvalgte Rows = magicSquare ( [ randomRow1, randomRow2 ] , : ) ;

% Vis de valgte rækker

disp ( 'Valgte rækker:' ) ;

disp ( valgte rækker ) ;

I dette eksempel opretter vi en 3×3 magisk firkant ved hjælp af funktionen magic(). Derefter genererer vi to tilfældige rækkeindekser ved hjælp af randi(3), da den magiske firkant har 3 rækker. Til sidst vælger vi de tilfældige rækker fra den magiske firkant ved hjælp af de genererede indekser og viser resultatet.

  Et skærmbillede af en computerbeskrivelse genereret automatisk med medium selvtillid

Konklusion

Denne artikel dækker måder at vælge tilfældige rækker fra en matrix på. Denne artikel dækker de tre funktioner til at vælge tilfældige rækker i en matrix, som er: randperm(), randsample(), datasample() og randi() funktion. Alle disse tre metoder kan generere tilfældige rækker fra en defineret matrix. Antallet af genererede rækker afhænger af det antal, vi har sendt inde i argumentet for disse funktioner. Læs om alle disse funktioner til generering af tilfældige rækker i MATLAB i denne artikel.