class_docstr: Single bag of Symbolic Fourier Approximation Symbols (IndividualBOSS).
  
  Bag of SFA Symbols Ensemble: implementation of a single BOSS Schaffer, the base
  classifier for the boss ensemble.
  
  Implementation of single BOSS model from Schäfer (2015). [1]_
  
  This is the underlying classifier for each classifier in the BOSS ensemble.
  
  Overview: input "n" series of length "m" and IndividualBoss performs a SFA
  transform to form a sparse dictionary of discretised words. The resulting
  dictionary is used with the BOSS distance function in a 1-nearest neighbor.
  
  Fit involves finding "n" histograms.
  
  Predict uses 1 nearest neighbor with a bespoke BOSS distance function.
  
  Parameters
  ----------
  window_size : int
      Size of the window to use in BOSS algorithm.
  word_length : int
      Length of word to use to use in BOSS algorithm.
  norm : bool, default = False
      Whether to normalize words by dropping the first Fourier coefficient.
  alphabet_size : default = 2
      Number of possible letters (values) for each word.
  save_words : bool, default = True
      Whether to keep NumPy array of words in SFA transformation even after
      the dictionary of words is returned. If True, the array is saved, which
      can shorten the time to calculate dictionaries using a shorter
      `word_length` (since the last "n" letters can be removed).
  n_jobs : int, default=1
      The number of jobs to run in parallel for both `fit` and `predict`.
      ``-1`` means using all processors.
  random_state : int or None, default=None
      Seed for random, integer.
  
  Attributes
  ----------
  n_classes_ : int
      Number of classes. Extracted from the data.
  classes_ : list
      The classes labels.
  
  See Also
  --------
  BOSSEnsemble, ContractableBOSS
  
  Notes
  -----
  For the Java version, see
  `TSML <https://github.com/uea-machine-learning/tsml/blob/master/src/main/java/
  tsml/classifiers/dictionary_based/IndividualBOSS.java>`_.
  
  References
  ----------
  .. [1] Patrick Schäfer, "The BOSS is concerned with time series classification
     in the presence of noise", Data Mining and Knowledge Discovery, 29(6): 2015
     https://link.springer.com/article/10.1007/s10618-014-0377-7
  
  Examples
  --------
  >>> from sktime.classification.dictionary_based import IndividualBOSS
  >>> from sktime.datasets import load_unit_test
  >>> X_train, y_train = load_unit_test(split="train", return_X_y=True)
  >>> X_test, y_test = load_unit_test(split="test", return_X_y=True) # doctest: +SKIP
  >>> clf = IndividualBOSS() # doctest: +SKIP
  >>> clf.fit(X_train, y_train) # doctest: +SKIP
  IndividualBOSS(...)
  >>> y_pred = clf.predict(X_test) # doctest: +SKIP
class_docstr_tok: ["Single","bag","of","Symbolic","Fourier","Approximation","Symbols","(","IndividualBOSS",")",".","Bag","of","SFA","Symbols","Ensemble",":","implementation","of","a","single","BOSS","Schaffer",",","the","base","classifier","for","the","boss","ensemble",".","Implementation","of","single","BOSS","model","from","Sch\u00e4fer","(","2015",")",".","[","1","]","_","This","is","the","underlying","classifier","for","each","classifier","in","the","BOSS","ensemble",".","Overview",":","input","``","n","''","series","of","length","``","m","''","and","IndividualBoss","performs","a","SFA","transform","to","form","a","sparse","dictionary","of","discretised","words",".","The","resulting","dictionary","is","used","with","the","BOSS","distance","function","in","a","1-nearest","neighbor",".","Fit","involves","finding","``","n","''","histograms",".","Predict","uses","1","nearest","neighbor","with","a","bespoke","BOSS","distance","function",".","Parameters","--","--","--","--","--","window_size",":","int","Size","of","the","window","to","use","in","BOSS","algorithm",".","word_length",":","int","Length","of","word","to","use","to","use","in","BOSS","algorithm",".","norm",":","bool",",","default","=","False","Whether","to","normalize","words","by","dropping","the","first","Fourier","coefficient",".","alphabet_size",":","default","=","2","Number","of","possible","letters","(","values",")","for","each","word",".","save_words",":","bool",",","default","=","True","Whether","to","keep","NumPy","array","of","words","in","SFA","transformation","even","after","the","dictionary","of","words","is","returned",".","If","True",",","the","array","is","saved",",","which","can","shorten","the","time","to","calculate","dictionaries","using","a","shorter","`","word_length","`","(","since","the","last","``","n","''","letters","can","be","removed",")",".","n_jobs",":","int",",","default=1","The","number","of","jobs","to","run","in","parallel","for","both","`","fit","`","and","`","predict","`",".","``","-1","``","means","using","all","processors",".","random_state",":","int","or","None",",","default=None","Seed","for","random",",","integer",".","Attributes","--","--","--","--","--","n_classes_",":","int","Number","of","classes",".","Extracted","from","the","data",".","classes_",":","list","The","classes","labels",".","See","Also","--","--","--","--","BOSSEnsemble",",","ContractableBOSS","Notes","--","--","-","For","the","Java","version",",","see","`","TSML","<","https",":","\/\/github.com\/uea-machine-learning\/tsml\/blob\/master\/src\/main\/java\/","tsml\/classifiers\/dictionary_based\/IndividualBOSS.java",">","`","_",".","References","--","--","--","--","--","..","[","1","]","Patrick","Sch\u00e4fer",",","``","The","BOSS","is","concerned","with","time","series","classification","in","the","presence","of","noise","''",",","Data","Mining","and","Knowledge","Discovery",",","29","(","6",")",":","2015","https",":","\/\/link.springer.com\/article\/10.1007\/s10618-014-0377-7","Examples","--","--","--","--",">",">",">","from","sktime.classification.dictionary_based","import","IndividualBOSS",">",">",">","from","sktime.datasets","import","load_unit_test",">",">",">","X_train",",","y_train","=","load_unit_test","(","split=","''","train","''",",","return_X_y=True",")",">",">",">","X_test",",","y_test","=","load_unit_test","(","split=","''","test","''",",","return_X_y=True",")","#","doctest",":","+SKIP",">",">",">","clf","=","IndividualBOSS","(",")","#","doctest",":","+SKIP",">",">",">","clf.fit","(","X_train",",","y_train",")","#","doctest",":","+SKIP","IndividualBOSS","(","...",")",">",">",">","y_pred","=","clf.predict","(","X_test",")","#","doctest",":","+SKIP"]
code: def _set_word_len(self, X, y, word_len):
      self.word_length = word_len
  
      # we have to retrain feature selection for now
      # might be optimized by remembering feature_dicts
      self._transformer.word_length = min(
          self._transformer.word_length, word_len
      )
      self._transformed_data = self._transformer.fit_transform(X, y)
  
imports: from copy import copy
  from itertools import compress
  import numpy
  from joblib import Parallel, effective_n_jobs
  from sklearn.metrics import pairwise
  from sklearn.utils import check_random_state, gen_even_slices
  from sklearn.utils.extmath import safe_sparse_dot
  from sklearn.utils.fixes import delayed
  from sklearn.utils.sparsefuncs_fast import csr_row_norms
  from sklearn.utils.validation import _num_samples
  from sktime.classification.base import BaseClassifier
  from sktime.transformations.panel.dictionary_based import SFAFast
  from sktime.utils.validation.panel import check_X_y
label_desc: Use image node_id 7 for calling the IndividualBOSS obj's underlying member method code with example usage: obj._set_word_len(X, y, word_len) without return types