docs: def fit(self, data=None):
          """
          Performs clustering.rst
  
          :param data: Data to be fit
          :return: the clustering.rst object
          """
          if self.is_pyclustering_instance(self.model):
              if isinstance(self.model, xmeans):
                  data = self.input_preprocess(data)
                  self.model._xmeans__pointer_data = data
              elif isinstance(self.model, clarans):
                  data = self.input_preprocess(data)
                  self.model._clarans__pointer_data = data
  
              self.model.process()
          else:
              self.model.fit(data)
              return self