Làm cách nào để chọn các hàng ngẫu nhiên từ một ma trận trong MATLAB?

Lam Cach Nao De Chon Cac Hang Ngau Nhien Tu Mot Ma Tran Trong Matlab



MATLAB là một ngôn ngữ lập trình và môi trường điện toán số có thể thiết kế các thuật toán và thực hiện các phép tính toán học. MATLAB cho phép người dùng tạo và thực hiện các phép tính toán học trên ma trận. Ở đây chúng ta sẽ thảo luận về cách chúng ta có thể chọn ngẫu nhiên các hàng từ một ma trận trong MATLAB.

Phương pháp chọn hàng ngẫu nhiên từ ma trận trong MATLAB

Có một số phương pháp trong MATLAB sử dụng để chúng ta có thể chọn các hàng ngẫu nhiên từ một ma trận. Bây giờ chúng tôi sẽ trình bày các cách sau để chọn các hàng ngẫu nhiên từ ma trận:

Cách 1: Sử dụng hàm randperm

Hàm randperm tạo danh sách các số từ 1 đến n theo thứ tự ngẫu nhiên. Những con số này được tổ chức dưới dạng một vectơ hàng. Chúng ta có thể sử dụng chức năng này để tạo các chỉ số hàng ngẫu nhiên và sau đó sử dụng các chỉ số đó để chọn các hàng từ ma trận của chúng ta.







Ví dụ

Mã MATLAB bên dưới chọn 2 hàng ngẫu nhiên từ ma trận A:



một = rand ( 10 , 5 )

% Tạo một hoán vị ngẫu nhiên của các chỉ số hàng

idx = uốn tóc bãi biển ( kích cỡ ( MỘT, 1 ) ) ;

% Chọn ngẫu nhiên 2 hàng của A

B = MỘT ( idx ( 1 : 2 ) , : )



Cách 2: Sử dụng hàm randsample

Hàm randsample tạo một mẫu ngẫu nhiên gồm các phần tử từ một mảng đã chỉ định. Để chọn các hàng ngẫu nhiên từ một ma trận, bạn có thể sử dụng hàm randsample với tùy chọn rows.





Chúng ta có thể sử dụng chức năng này để tạo các chỉ số hàng ngẫu nhiên và sau đó sử dụng các chỉ số đó để chọn các hàng từ ma trận của chúng ta.

Ví dụ

Mã MATLAB bên dưới chọn 2 hàng ngẫu nhiên từ ma trận A:



một = rand ( 10 , 5 )

% Tạo chỉ số hàng ngẫu nhiên và chọn hàng ngẫu nhiên

idx = randsample ( kích cỡ ( MỘT, 1 ) , 2 ) ;

B = MỘT ( idx, : )

Cách 3: Sử dụng hàm datasample

Hàm datasample trả về một mẫu dữ liệu ngẫu nhiên từ một tập dữ liệu đầu vào. Chúng ta có thể sử dụng chức năng này để chọn trực tiếp các hàng ngẫu nhiên từ ma trận của mình. Hàm datasample là phiên bản nâng cao hơn của hàm randsample.

Ví dụ

Mã MATLAB bên dưới chọn 3 hàng ngẫu nhiên từ ma trận A:

% Tạo ma trận 5x3

một = [ 1 2 3 ; 4 5 6 ; 7 số 8 9 ; 10 , mười một , 12 ; 13 , 14 , mười lăm ]

% Chọn hàng ngẫu nhiên

random_rows = mẫu dữ liệu ( MỘT, 3 )

Cách 4: Sử dụng Hàm randi()

Hàm randi() là một hàm MATLAB cho phép chúng ta tạo các số nguyên ngẫu nhiên từ một phạm vi nhất định. Trong ngữ cảnh chọn các hàng ngẫu nhiên từ một ma trận, chúng ta có thể sử dụng hàm randi() để tạo các chỉ số hàng ngẫu nhiên.

cú pháp

Cú pháp hàm randi() là:

randi ( N )

Ở đây, n đại diện cho giới hạn trên của phạm vi mà các số nguyên ngẫu nhiên được tạo ra. Randi() cho chúng ta một số nguyên ngẫu nhiên từ 1 đến n.

Ví dụ

Đây là một mã ví dụ MATLAB đơn giản minh họa cách sử dụng hàm randi() để chọn hai hàng ngẫu nhiên từ một ma trận:

% Tạo hình vuông ma thuật 3x3

phép thuậtSquare = ảo thuật ( 3 )

% Tạo hai chỉ mục hàng ngẫu nhiên bằng randi()

ngẫu nhiênRow1 = randi ( 3 ) ;

ngẫu nhiênRow2 = randi ( 3 ) ;

% Chọn các hàng ngẫu nhiên từ ô vuông ma thuật

đã chọnRows = ma thuậtSquare ( [ ngẫu nhiênRow1, ngẫu nhiênRow2 ] , : ) ;

% Hiển thị các hàng đã chọn

phân tán ( 'Hàng được chọn:' ) ;

phân tán ( hàng đã chọn ) ;

Trong ví dụ này, chúng ta tạo một hình vuông ma thuật 3×3 bằng cách sử dụng hàm magic(). Sau đó, chúng tôi tạo hai chỉ số hàng ngẫu nhiên bằng cách sử dụng randi(3) vì hình vuông ma thuật có 3 hàng. Cuối cùng, chúng tôi chọn các hàng ngẫu nhiên từ hình vuông ma thuật bằng cách sử dụng các chỉ số đã tạo và hiển thị kết quả.

  Ảnh chụp màn hình máy tính Mô tả được tạo tự động với độ tin cậy trung bình

Phần kết luận

Bài viết này đề cập đến các cách chọn hàng ngẫu nhiên từ ma trận. Bài viết này đề cập đến ba chức năng chọn các hàng ngẫu nhiên của một ma trận, đó là: hàm randperm(), randsample(), datasample() và randi(). Tất cả ba phương pháp này có thể tạo các hàng ngẫu nhiên từ một ma trận xác định. Số lượng hàng được tạo tùy thuộc vào số chúng tôi đã chuyển vào bên trong đối số của các hàm này. Đọc về tất cả các hàm này để tạo các hàng ngẫu nhiên trong MATLAB trong bài viết này.