Metody wybierania losowych wierszy z macierzy w MATLABie
Istnieje kilka metod w MATLAB-ie, za pomocą których możemy wybrać losowe wiersze z macierzy. Teraz omówimy następujące sposoby wybierania losowych wierszy z macierzy:
- Metoda 1: Użycie funkcji Randperm
- Metoda 2: Korzystanie z funkcji losowej próbki
- Metoda 3: Korzystanie z funkcji datasample
- Metoda 4: Użycie funkcji randi().
Metoda 1: Użycie funkcji Randperm
Funkcja randperm generuje listę liczb od 1 do n w przypadkowej kolejności. Liczby te są zorganizowane jako wektor wierszowy. Możemy użyć tej funkcji do wygenerowania losowych indeksów wierszy, a następnie użyć tych indeksów do wybrania wierszy z naszej macierzy.
Przykład
Poniższy kod MATLAB wybiera 2 losowe wiersze z macierzy A:
= skraj ( 10 , 5 )
% Wygeneruj losową permutację indeksów wierszy
idx = trwała na plaży ( rozmiar ( A, 1 ) ) ;
% Wybierz losowo 2 rzędy schematu A
B = A ( idx ( 1 : 2 ) ,: )
Metoda 2: Korzystanie z funkcji losowej próbki
Funkcja Randsample generuje losową próbkę elementów z określonej tablicy. Aby wybrać losowe wiersze z macierzy, możesz użyć funkcji próby losowej z opcją wierszy.
Możemy użyć tej funkcji do wygenerowania losowych indeksów wierszy, a następnie użyć tych indeksów do wybrania wierszy z naszej macierzy.
Przykład
Poniższy kod MATLAB wybiera 2 losowe wiersze z macierzy A:
= skraj ( 10 , 5 )
% Wygeneruj losowe indeksy wierszy i wybierz losowe wiersze
idx = losowa próbka ( rozmiar ( A, 1 ) , 2 ) ;
B = A ( idx, : )
Metoda 3: Korzystanie z funkcji datasample
Funkcja datasample zwraca losową próbkę danych z wejściowego zestawu danych. Możemy użyć tej funkcji, aby bezpośrednio wybrać losowe wiersze z naszej macierzy. Funkcja datasample jest bardziej zaawansowaną wersją funkcji losowego próbkowania.
Przykład
Poniższy kod MATLAB wybiera 3 losowe wiersze z macierzy A:
% Tworzenie macierzy 5x3= [ 1 2 3 ; 4 5 6 ; 7 8 9 ; 10 , jedenaście , 12 ; 13 , 14 , piętnaście ]
% Wybierz losowe wiersze
random_rows = próbka danych ( A, 3 )
Metoda 4: Użycie funkcji randi().
Funkcja randi() jest funkcją MATLAB-a, która pozwala nam generować losowe liczby całkowite z podanego zakresu. W kontekście wybierania losowych wierszy z macierzy możemy użyć funkcji randi() do generowania losowych indeksów wierszy.
Składnia
Składnia funkcji randi() jest następująca:
Randi ( N )Tutaj n reprezentuje górną granicę zakresu, z którego generowane są losowe liczby całkowite. Funkcja randi() daje nam losową liczbę całkowitą z przedziału od 1 do n.
Przykład
Oto prosty przykładowy kod MATLAB, który demonstruje użycie funkcji randi() do wybrania dwóch losowych wierszy z macierzy:
% Utwórz magiczny kwadrat 3x3magiczny kwadrat = magia ( 3 )
% Wygeneruj dwa losowe indeksy wierszy za pomocą randi()
randomRow1 = randi ( 3 ) ;
randomRow2 = randi ( 3 ) ;
% Wybierz losowe wiersze z magicznego kwadratu
wybrane wiersze = magiczny kwadrat ( [ losowyRząd1, losowyRząd2 ] ,: ) ;
% Wyświetl wybrane wiersze
disp ( „Wybrane wiersze:” ) ;
disp ( wybrane wiersze ) ;
W tym przykładzie tworzymy magiczny kwadrat 3×3 za pomocą funkcji magic(). Następnie generujemy dwa losowe indeksy wierszy za pomocą randi(3), ponieważ magiczny kwadrat ma 3 wiersze. Na koniec wybieramy losowe wiersze z magicznego kwadratu za pomocą wygenerowanych wskaźników i wyświetlamy wynik.
Wniosek
W tym artykule opisano sposoby wybierania losowych wierszy z macierzy. W tym artykule opisano trzy funkcje wybierania losowych wierszy macierzy, którymi są: funkcja randperm(), randsample(), datasample() i randi(). Wszystkie te trzy metody mogą generować losowe wiersze ze zdefiniowanej macierzy. Liczba wygenerowanych wierszy zależy od liczby, którą przekazaliśmy w argumencie tych funkcji. Przeczytaj o wszystkich tych funkcjach do generowania losowych wierszy w MATLAB w tym artykule.