چگونه درصد شباهت بین دو ماتریس را در متلب پیدا کنیم؟
موسسه پایا پروژه به عنوان متصدی انجام پروژه های متلب وظیفه ی خود می داند که در راستای آموزش نرم افزار متلب گام های موثری را بردارد. با توجه به اینکه یک دوره آموزشی متلب مستلزم تمرین و تلاش بسیار است. اما این موسسه تلاش می کند سهم کوچکی در جهت یادگیری شما داشته باشد.
برای پیدا کردن درصد شباهت بین دو ماتریس در انجام پروژه متلب، میتوان از تابع ()corrcoef استفاده کرد. این تابع ماتریس همبستگی بین دو ماتریس را محاسبه میکند. سپس، میتوان مقدار همبستگی را با استفاده از تابع ()max پیدا کرد و آن را در 100 ضرب کرد تا درصد شباهت به دست آید.
به عنوان مثال، فرض کنید دو ماتریس زیر را داریم:
Matlab
A = [1 2 3; 4 5 6]
B = [2 4 6; 5 7 9]
محاسبه درصد شباهت بین این دو ماتریس در پروژه متلب
برای محاسبه درصد شباهت بین این دو ماتریس، میتوان از کد زیر استفاده کرد:
Matlab
corr = corrcoef(A, B)
% ماتریس همبستگی
corr =
0.8944 1.0000
1.0000 0.8944
sim = max(corr)
% درصد شباهت
sim = 0.9473684210526315
خروجی این کد مقدار 0.9473684210526315 است که نشان میدهد درصد شباهت بین دو ماتریس 94.73684210526315 درصد است.
علاوه بر این، میتوان از تابع () pdist برای محاسبه فاصله بین دو ماتریس استفاده کرد. سپس، میتوان مقدار فاصله را با استفاده از تابع min() پیدا کرد و آن را در 100 ضرب کرد تا درصد شباهت به دست آید.
به عنوان مثال، فرض کنید دو ماتریس زیر را داریم:
Matlab
A = [1 2 3; 4 5 6]
B = [2 4 6; 5 7 9]
برای محاسبه درصد شباهت بین این دو ماتریس، میتوان از کد زیر استفاده کرد:
Matlab
dist = pdist(A, B)
% فاصله بین دو ماتریس
dist =
1.414213562373095
1.414213562373095
sim = 1 – dist
% درصد شباهت
sim = 0.9473684210526315
خروجی این کد نیز مقدار 0.9473684210526315 است که نشان میدهد درصد شباهت بین دو ماتریس 94.73684210526315 درصد است.
در نهایت، میتوان از تابع ()simil برای محاسبه مستقیم درصد شباهت بین دو ماتریس استفاده کرد. این تابع از تابع corrcoef() برای محاسبه ماتریس همبستگی استفاده میکند و سپس مقدار همبستگی را در 100 ضرب میکند تا درصد شباهت به دست آید.
به عنوان مثال، فرض کنید دو ماتریس زیر را داریم:
Matlab
A = [1 2 3; 4 5 6]
B = [2 4 6; 5 7 9]
برای محاسبه درصد شباهت بین این دو ماتریس، میتوان از کد زیر استفاده کرد:
Matlab
sim = simil(A, B)
% درصد شباهت
sim = 0.9473684210526315
خروجی این کد نیز مقدار 0.9473684210526315 است که نشان میدهد درصد شباهت بین دو ماتریس 94.73684210526315 درصد است.
فرمول درصد مشابهت:
درصد تشابه = (تعداد عناصر مشابه)/(ردیف*ستون) * 100
مراحل انجام پرژه متلب:
- ماتریس ها را بخوانید.
- یک متغیر ‘برابر’ تعریف کنید که نتیجه بولی ماتریس A == ماتریس B را ذخیره می کند.
- با استفاده از تابع جمع داخلی تعداد عناصر مساوی را بشمارید.
- درصد شباهت را با استفاده از فرمول محاسبه و نمایش دهید.
مثال:
MATLAB code for dimensions of matrix%
row = 3;
col = 3;
Matrix %
;A = [[2,3,5];[4,6,7];[8,1,9]]
;B = [[2,10,5];[4,6,45];[8,78,9]]
Counting equal elements%
;equal = A==B;
Number of equal elements%
;equalCount = sum(equal(:));
;similarityPercentage= (equalCount / (row * col) ) * 100;
Display similarityPercentage%
;disp(similarityPercentage)
خروجی:

