class_docstr: The `RepeatingBasisFunction` transformer is designed to be used when the input data has a circular nature.
  
  For example, for days of the week you might face the problem that, conceptually, day 7 is as close to day 6 as it is
  to day 1. While numerically their distance is different.
  
  This transformer remedies that problem. The transformer selects a column and transforms it with a given number of
  repeating (radial) basis functions.
  
  Radial basis functions are bell-curve shaped functions which take the original data as input. The basis functions
  are equally spaced over the input range. The key feature of repeating basis functions is that they are continuous
  when moving from the max to the min of the input range. As a result these repeating basis functions can capture how
  close each datapoint is to the center of each repeating basis function, even when the input data has a circular
  nature.
  
  Parameters
  ----------
  column : int | str, default=0
      Index or column name of the data to transform. Integers are interpreted as positional columns, while
      strings can reference DataFrame columns by name.
  remainder : Literal["drop", "passthrough"], default="drop"
      By default, only the specified column is transformed, and the non-specified columns are dropped.
      By specifying `remainder="passthrough"`, all remaining columns will be automatically passed through.
      This subset of columns is concatenated with the output of the transformer.
  n_periods : int, default=12
      Number of basis functions to create, i.e., the number of columns that will exit the transformer.
  input_range : Tuple[float, float] | List[float] | None, default=None
      The values at which the data repeats itself. For example, for days of the week this is (1,7).
      If `input_range=None` it is inferred from the training data.
  width : float, default=1.0.
      Determines the width of the radial basis functions.
  
  Attributes
  ----------
  pipeline_ : ColumnTransformer
      Fitted `ColumnTransformer` object used to transform data with repeating basis functions.
class_docstr_tok: ["The","`","RepeatingBasisFunction","`","transformer","is","designed","to","be","used","when","the","input","data","has","a","circular","nature",".","For","example",",","for","days","of","the","week","you","might","face","the","problem","that",",","conceptually",",","day","7","is","as","close","to","day","6","as","it","is","to","day","1",".","While","numerically","their","distance","is","different",".","This","transformer","remedies","that","problem",".","The","transformer","selects","a","column","and","transforms","it","with","a","given","number","of","repeating","(","radial",")","basis","functions",".","Radial","basis","functions","are","bell-curve","shaped","functions","which","take","the","original","data","as","input",".","The","basis","functions","are","equally","spaced","over","the","input","range",".","The","key","feature","of","repeating","basis","functions","is","that","they","are","continuous","when","moving","from","the","max","to","the","min","of","the","input","range",".","As","a","result","these","repeating","basis","functions","can","capture","how","close","each","datapoint","is","to","the","center","of","each","repeating","basis","function",",","even","when","the","input","data","has","a","circular","nature",".","Parameters","--","--","--","--","--","column",":","int","|","str",",","default=0","Index","or","column","name","of","the","data","to","transform",".","Integers","are","interpreted","as","positional","columns",",","while","strings","can","reference","DataFrame","columns","by","name",".","remainder",":","Literal","[","``","drop","''",",","``","passthrough","''","]",",","default=","''","drop","''","By","default",",","only","the","specified","column","is","transformed",",","and","the","non-specified","columns","are","dropped",".","By","specifying","`","remainder=","''","passthrough","''","`",",","all","remaining","columns","will","be","automatically","passed","through",".","This","subset","of","columns","is","concatenated","with","the","output","of","the","transformer",".","n_periods",":","int",",","default=12","Number","of","basis","functions","to","create",",","i.e.",",","the","number","of","columns","that","will","exit","the","transformer",".","input_range",":","Tuple","[","float",",","float","]","|","List","[","float","]","|","None",",","default=None","The","values","at","which","the","data","repeats","itself",".","For","example",",","for","days","of","the","week","this","is","(","1,7",")",".","If","`","input_range=None","`","it","is","inferred","from","the","training","data",".","width",":","float",",","default=1.0",".","Determines","the","width","of","the","radial","basis","functions",".","Attributes","--","--","--","--","--","pipeline_",":","ColumnTransformer","Fitted","`","ColumnTransformer","`","object","used","to","transform","data","with","repeating","basis","functions","."]
docstr: Fit `RepeatingBasisFunction` transformer on input data `X`.
  It uses `sklearn.compose.ColumnTransformer`.
  
  Parameters
  ----------
  X : array-like of shape (n_samples, n_features)
      The data used to compute the quantiles for capping.
  y : array-like of shape (n_samples,), default=None
      Ignored, present for compatibility.
  
  Returns
  -------
  self : RepeatingBasisFunction
      The fitted transformer.
docstr_tok: ["Fit","`","RepeatingBasisFunction","`","transformer","on","input","data","`","X","`",".","It","uses","`","sklearn.compose.ColumnTransformer","`",".","Parameters","--","--","--","--","--","X",":","array-like","of","shape","(","n_samples",",","n_features",")","The","data","used","to","compute","the","quantiles","for","capping",".","y",":","array-like","of","shape","(","n_samples",",",")",",","default=None","Ignored",",","present","for","compatibility",".","Returns","--","--","--","-","self",":","RepeatingBasisFunction","The","fitted","transformer","."]
code: def fit(self, X, y=None):
      """Fit `RepeatingBasisFunction` transformer on input data `X`.
      It uses `sklearn.compose.ColumnTransformer`.
  
      Parameters
      ----------
      X : array-like of shape (n_samples, n_features)
          The data used to compute the quantiles for capping.
      y : array-like of shape (n_samples,), default=None
          Ignored, present for compatibility.
  
      Returns
      -------
      self : RepeatingBasisFunction
          The fitted transformer.
      """
      self.pipeline_ = ColumnTransformer(
          [
              (
                  "repeatingbasis",
                  _RepeatingBasisFunction(
                      n_periods=self.n_periods,
                      input_range=self.input_range,
                      width=self.width,
                  ),
                  [self.column],
              )
          ],
          remainder=self.remainder,
      )
  
      self.pipeline_.fit(X, y)
  
      return self
  
file_path: scikit-lego/sklego/preprocessing/repeatingbasis.py
imports: import numpy
  from sklearn.base import BaseEstimator, TransformerMixin
  from sklearn.compose import ColumnTransformer
  from sklearn.utils import check_array
  from sklearn.utils.validation import check_is_fitted
label_desc: Use image node_id 2 for calling the RepeatingBasisFunction obj's underlying member method code with example usage: obj.fit(X, y) and returns: self