Tôi có biểu thức cung cấp ma trận và tôi muốn truy cập phần tử mà không tạo biến tạm thời, chẳng hạn như cov(M)(1,1)
. Tôi làm nó như thế nào?Lập chỉ mục cột biểu thức MATLAB
Cảm ơn!
Tôi có biểu thức cung cấp ma trận và tôi muốn truy cập phần tử mà không tạo biến tạm thời, chẳng hạn như cov(M)(1,1)
. Tôi làm nó như thế nào?Lập chỉ mục cột biểu thức MATLAB
Cảm ơn!
Tôi có một chức năng như thế này trong con đường của tôi:
getRegion = @(matrix, rows, cols) matrix(rows,cols);
Để tôi có thể gọi:
getRegion(cov(M), 1, 1);
Nó cũng sẽ có tác dụng nếu bạn muốn có một khu vực lớn:
getRegion(cov(M), 1:2, 2);
Có thể sử dụng chức năng ẩn danh:
>> f11 = @(M) M(1,1);
>> M = [1 2; 9 4];
>> cov(M)
ans =
32 8
8 2
>> f11(cov(M))
ans =
32
Hoặc cho chủ nghĩa thuần túy, ở đây nó là không có các biến trung gian ở tất cả:
>> feval(@(M) M(1,1), cov(M))
ans =
32
đẹp giải pháp, nhưng trong bản Tuyên Bố feval bạn xem xét thay đổi các tham số để một tên khác với 'M' cho rõ ràng. – Geoff
giải pháp tốt đẹp .. – yassin