Kaedah untuk Memilih Baris Rawak daripada Matriks dalam MATLAB
Terdapat beberapa kaedah dalam MATLAB yang menggunakan mana kita boleh memilih baris rawak daripada matriks. Sekarang kita akan merangkumi cara berikut untuk memilih baris rawak daripada matriks:
- Kaedah 1: Menggunakan Fungsi randperm
- Kaedah 2: Menggunakan Fungsi randample
- Kaedah 3: Menggunakan Fungsi sampel data
- Kaedah 4: Menggunakan Fungsi randi().
Kaedah 1: Menggunakan Fungsi randperm
Fungsi randperm menjana senarai nombor dari 1 hingga n dalam susunan rawak. Nombor ini disusun sebagai vektor baris. Kita boleh menggunakan fungsi ini untuk menjana indeks baris rawak dan kemudian menggunakan indeks tersebut untuk memilih baris daripada matriks kami.
Contoh
Di bawah kod MATLAB pilih 2 baris rawak daripada matriks A:
A = rand ( 10 , 5 )
% Hasilkan pilih atur rawak indeks baris
idx = perm pantai ( saiz ( A, 1 ) ) ;
% Pilih rawak 2 baris A
B = A ( idx ( 1 : 2 ) , : )
Kaedah 2: Menggunakan Fungsi randample
Fungsi randsample menjana sampel rawak unsur daripada tatasusunan yang ditentukan. Untuk memilih baris rawak daripada matriks, anda boleh menggunakan fungsi randsample dengan pilihan baris.
Kita boleh menggunakan fungsi ini untuk menjana indeks baris rawak dan kemudian menggunakan indeks tersebut untuk memilih baris daripada matriks kami.
Contoh
Di bawah kod MATLAB pilih 2 baris rawak daripada matriks A:
A = rand ( 10 , 5 )
% Hasilkan indeks baris rawak dan pilih baris rawak
idx = randsample ( saiz ( A, 1 ) , 2 ) ;
B = A ( idx,: )
Kaedah 3: Menggunakan Fungsi sampel data
Fungsi datasample mengembalikan sampel rawak data daripada set data input. Kita boleh menggunakan fungsi ini untuk terus memilih baris rawak daripada matriks kita. Fungsi datasample ialah versi yang lebih maju bagi fungsi randsample.
Contoh
Di bawah kod MATLAB memilih 3 baris rawak daripada matriks A:
% Buat matriks 5x3A = [ 1 2 3 ; 4 5 6 ; 7 8 9 ; 10 , sebelas , 12 ; 13 , 14 , lima belas ]
% Pilih baris rawak
rawak_baris = sampel data ( A, 3 )
Kaedah 4: Menggunakan Fungsi randi().
Fungsi randi() ialah fungsi MATLAB yang membolehkan kita menjana integer rawak daripada julat tertentu. Dalam konteks memilih baris rawak daripada matriks, kita boleh menggunakan fungsi randi() untuk menjana indeks baris rawak.
Sintaks
Sintaks fungsi randi() ialah:
randi ( n )Di sini, n mewakili had atas julat dari mana integer rawak dijana. Randi() memberi kita integer rawak antara 1 dan n.
Contoh
Berikut ialah kod contoh MATLAB mudah yang menunjukkan penggunaan fungsi randi() untuk memilih dua baris rawak daripada matriks:
% Buat petak ajaib 3x3magicSquare = sihir ( 3 )
% Hasilkan dua indeks baris rawak menggunakan randi()
rawakRow1 = randi ( 3 ) ;
rawakRow2 = randi ( 3 ) ;
% Pilih baris rawak daripada petak ajaib
selectedRows = magicSquare ( [ rawakRow1, rawakRow2 ] , : ) ;
% Paparkan baris yang dipilih
disp ( 'Barisan yang Dipilih:' ) ;
disp ( dipilihBaris ) ;
Dalam contoh ini, kami mencipta petak ajaib 3×3 menggunakan fungsi magic(). Kemudian, kami menjana dua indeks baris rawak menggunakan randi(3) kerana petak ajaib mempunyai 3 baris. Akhir sekali, kami memilih baris rawak dari segi empat sama ajaib menggunakan indeks yang dihasilkan dan memaparkan hasilnya.
Kesimpulan
Artikel ini merangkumi cara memilih baris rawak daripada matriks. Artikel ini merangkumi tiga fungsi memilih baris rawak matriks iaitu: randperm(), randsample(), datasample(), dan randi() fungsi. Ketiga-tiga kaedah ini boleh menjana baris rawak daripada matriks yang ditentukan. Bilangan baris yang dijana bergantung pada nombor yang kami hantar di dalam hujah fungsi ini. Baca tentang semua fungsi ini untuk menjana baris rawak dalam MATLAB dalam artikel ini.