17     This class provides a fast implementation of equal frequency binning. 
   18     In Equal frequency binning the binning is chosen in a way that every bin has the same number of entries. 
   19     An example with a Neural Network can be found in: mva/examples/keras/preprocessing.py 
   25         If you saved a state before and wants to rebuild the class use the state parameter. 
   29             self.
statestate = {
'binning_array': [], 
'number_of_bins': 0}
 
   31             self.
statestate = state
 
   33     def fit(self, x, number_of_bins=100):
 
   35         Do the fitting -> calculate binning boundaries 
   37         for variable 
in range(len(x[0, :])):
 
   38             self.
statestate[
'binning_array'].append(np.percentile(np.nan_to_num(x[:, variable]),
 
   39                                                              np.linspace(0, 100, number_of_bins + 1)))
 
   40         self.
statestate[
'number_of_bins'] = number_of_bins
 
   46         for variable 
in range(len(x[0, :])):
 
   47             x[:, variable] = np.digitize(np.nan_to_num(x[:, variable]),
 
   48                                          self.
statestate[
'binning_array'][variable][1:-1]) / self.
statestate[
'number_of_bins']
 
   53         Returns a pickable dictionary to save the state of the class in a mva weightfile 
   55         return self.
statestate
 
def fit(self, x, number_of_bins=100)
def __init__(self, state=None)