1

I am new to octave and would like to experiment with an octave-based library for class imbalance learning available here.

After setting up the environment as described in the user guide (pp. 18), to use the algorithm FuzzyImb, one runs:

>> [predictions]=fuzzyImbECOC(xtrain,ytrain,xtest,ytest,'w6',0.1);

However, every time I run this, I get the error:

It appears fuzzyImbECOC.m calls funECOC.m at line 24:

24    code = funECOC(numberc);

Which generates the undefined error.

error: 'Pseudo_random_Coding undefined near line 45, column 45
error: called from
       funECOC at line 45 column 9
       fuzzyImbECOC at line 24 column 6
>>

I can confirm all files are available in my working directory, and path added to octave as described.

Can someone help resolve this problem?

EDIT

funECOC.mat

45    code=Pseudo_randdom_Coding(N_class,N_dichotomizers,zero_prob);
yarinya
  • 11
  • 3
  • Where is `Pseudo_randdom_Coding` in that repository? I can't find it – Ander Biguri Oct 25 '21 at 15:57
  • line 45 of the `funECOC.m` file: https://github.com/chongshengzhang/Multi_Imbalance/blob/master/src/Multi_Imbalance_Octave/FuzzyImb/funECOC.m – yarinya Oct 25 '21 at 16:07
  • That is where its called, but where is it defined? It does not seem to exist, and therefore the undefined error would make sense – Ander Biguri Oct 26 '21 at 09:32
  • Ah, I think they called it wrongly, here's how it is defined: https://github.com/chongshengzhang/Multi_Imbalance/blob/master/src/Multi_Imbalance_Octave/FuzzyImb/pseudoRanddomCoding.m – yarinya Oct 26 '21 at 09:50
  • Yep, they are called wrongly – Ander Biguri Oct 26 '21 at 10:38

0 Answers0