フィルターのクリア

How I can evaluate 5 input matrices (208*216 numeric matrix table) evalfis(fis,inputs)

2 ビュー (過去 30 日間)
Berna Caliskan
Berna Caliskan 2021 年 12 月 4 日
回答済み: Gowtham 2023 年 10 月 13 日
It gives error
Input data must have as many columns as input variables and as many rows as independent sets of input values.
>> a = readfis('Suitability');
inputs=([slope_matris jeo_matris pop_matris land_matris stream_matris]);
>> evalfis(a,[slope_matris jeo_matris pop_matris land_matris stream_matris]);

回答 (1 件)

Gowtham
Gowtham 2023 年 10 月 13 日
Hello Berna,
I understand you encountered an error while using the 'evalfis' function on five input matrices of size 208 x 216 each. The error is related to the number of rows and columns in the input data.
To resolve this issue, we need to specify the input combinations for evaluation using an array that has one row per input combination.
I suggest concatenating the matrices using a semicolon (;) to ensure the dimension matches the expected format. This will allow the 'evalfis' function to process the input matrices correctly.
For a sample demonstration of the above process, kindly refer to the following code snippet:
fis = readfis('tipper');
% 'tipper' expects each input with dimension (1, 2)
% sample with 3 input matrices
res = evalfis(fis, [1 2; 3 4; 5 6])
res = 3×1
5.5586 12.2184 15.0000
Kindly refer to the following MATLAB documentation for further information on how to use ‘evalfis’ and to concatenate matrices.
Hope this helps.
Best Regards,
Gowtham

カテゴリ

Help Center および File ExchangeFuzzy Inference System Modeling についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by