Filter löschen
Filter löschen

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

2 Ansichten (letzte 30 Tage)
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]);

Antworten (1)

Gowtham
Gowtham am 13 Okt. 2023
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

Kategorien

Mehr zu Fuzzy Inference System Modeling finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by