Trong quá trình sử dụng có một số hàm các bạn sẽ gặp rất thường xuyên. Hàm find() là một trong những hàm đó. Trong bài này tôi sẽ giới thiệu với các bạn về cách sử dụng hàm find() và các ví dụ sử dụng hàm find(). Hi vọng bài viết sẽ hữu ích với các  bạn trong quá trình lập trình Matlab.
Hàm find()
Tìm ra các chỉ số và các giá trị của các phần tử khác không thỏa mãn tính chất nào đó
Cấu trúc
ind = find(X)
ind = find(X, k)
ind = find(X, k, ‘first’)
ind = find(X, k, ‘last’)
[row,col] = find(X, …)
[row,col,v] = find(X, …)
Mô tả
ind = find(X) Thống kê tất cả các giá trị khác không của mảng X, trả về các chỉ số tuyến tính của chúng trong vector ind. Nếu X là vector hàng thì ind là vector hàng ngược lại nếu X là vector cột thì ind là vector cột. Nếu X là vector 0 hoặc mảng trống thì ind là mảng trống
ind = find(X, k) hoặc ind = find(X, k, ‘first’) trả về k giá trị đầu tiền khác không của X. k phải là số nguyên dương, nhưng nó có thể là bất kì kiểu dữ liệu số nào.
ind = find(X, k, ‘last’) Trả về k giá trị cuối cùng (tính từ cuối lên)  của X tương ứng khác không.
[row,col] = find(X, …) trả về chỉ số hàng và  chỉ số cột của các phần tử khác không trong ma trận X. Cấu trúc này đặc biệt hữu dụng khi làm việc với các ma trận mỏng. Nếu X là mảng N chiều với N>2 thì col chứa các chỉ số tuyến tính cho cột. Ví dụ, cho mảng 5x7x3 với một giá trị khác không tại X(4,2,3), hàm find trả về giá trị 4 cho row và 16 cho col. Điều này được giải thích như sau: (7 cột ở trang 1)+ (7 cột ở trang 2)+ (2 cột ở trang 3) = 16.
[row,col,v] = find(X, …)  trả về một vector cột hoặc vector hàng v các giái trị khác không của x, đồng thời chỉ số hàng và chỉ sô cột. Nếu x là biểu thức logic thì v là một mảng logic. Đầu ra v chứa các phần tử khác không của thỏa mãn biểu thức X. Ví dụ:
A= magic(4)
A =
    16     2     3    13
     5    11    10     8
     9     7     6    12
     4    14    15     1
[r,c,v]= find(A>10);
r’, c’, v’
ans =
     1     2     4     4     1     3
ans =
     1     2     2     3     4     4
ans =
     1     1     1     1     1     1
Ở đây vector được trả về v là một mảng logic chứa các phần tử khác không của N với:
N=(A>10)
Ví dụ
Ví dụ 1
X = [1 0 4 -3 0 0 0 8 6];
indices = find(X)
trả về các chỉ số tuyến tính của các phần tử khác không trong x
indices =
     1     3     4     8     9
Ví dụ 2
Người dùng có thể sử dụng các biểu thức logic để định nghĩa X. ví dụ
find(X > 2)
Trả về các chỉ số tuyến tính tương ứng của các phần tử của X mà tại đó lớn hơn 2.
ans =
     3     8     9
Ví dụ 3
Câu lệnh find dưới đây
X = [3 2 0; -5 0 7; 0 0 1];
[r,c,v] = find(X)
Trả về vector  các chỉ số hàng của các phần tử khác không của X
r =
     1
     2
     1
     2
     3
Vector các chỉ số cột của các phần tử khác không của X
c =
     1
     1
     2
     3
     3
Và vetor chứa các giá trị khác không đó.
v =
     3
    -5
     2
     7
     1
Ví dụ 4
Biểu thức
X = [3 2 0; -5 0 7; 0 0 1];
[r,c,v] = find(X>2)
Trả về vector chỉ số hàng  của các giá trị  khác không của X thỏa mãn N với N=(X>2)
r =
     1
     2
Vector các chỉ số cột của các phần tử khác không của X thỏa mãn N với N=(X>2)
c =
     1
     3
Và vetor logic thể hiện sự thỏa mãn biểu thức đó.
v =
     1
     1
Ví dụ 5
Một số toán tử trên vector
x = [11  0  33  0  55]’;
find(x)
ans =
     1
     3
     5
find(x == 0)
ans =
     2
     4
find(0 < x & x < 10*pi)
ans =
     1
Ví dụ 6
Đối với ma trận
M = magic(3)
M =
     8     1     6
     3     5     7
     4     9     2
find(M > 3, 4)
Trả về 4 giá trị chỉ số của các phần tử thỏa mãn >3
ans =
     1
     3
     5
     6
Ví dụ 7
Nếu X là vector 0 thì trả về ma trận rỗng. ví dụ:
indices = find([0;0;0])
indices =
   Empty matrix: 0-by-1
 <matlabthayhai>

0 nhận xét:

Lập trình Matlab

Lập trình C#

Lập trình C++

Chế tạo robot

Học AutoCAD

Thiết kế Powerpoint chuyên nghiệp

Làm phim hoạt hình 3D với MAYA

Matlabthayhai. Powered by Blogger.

Hướng dẫn cài đặt Matlab 2014+15+16

Your Name


Your Message*

Categories

Hello! We’re Fenix Creative Photo Studio

Video

Khóa học ##Anh văn cho người mất gốc

Lập trình Android toàn tập

Lập trình WinForm với C#: 10 ứng dụng

Lập trình Kotlin toàn tập

Thiết kế Web chuẩn SEO bằng Wordpress cho người mới

Lập trình Wordpress Theme cho doanh nghiệp cùng Bootstrap

THÀNH THẠO Kế toán thực tế trên phần mềm MISA

THÀNH THẠO Kế toán tổng hợp trên Excel sau 30 ngày