class_docstr: Linear Discriminant Analysis Class
  
  Parameters
  ----------
  n_discriminants : int (default: None)
      The number of discrimants for transformation.
      Keeps the original dimensions of the dataset if `None`.
  
  Attributes
  ----------
  w_ : array-like, shape=[n_features, n_discriminants]
      Projection matrix
  e_vals_ : array-like, shape=[n_features]
      Eigenvalues in sorted order.
  e_vecs_ : array-like, shape=[n_features]
     Eigenvectors in sorted order.
  
  Examples
  -----------
  For usage examples, please see
  https://rasbt.github.io/mlxtend/user_guide/feature_extraction/LinearDiscriminantAnalysis/
class_docstr_tok: ["Linear","Discriminant","Analysis","Class","Parameters","--","--","--","--","--","n_discriminants",":","int","(","default",":","None",")","The","number","of","discrimants","for","transformation",".","Keeps","the","original","dimensions","of","the","dataset","if","`","None","`",".","Attributes","--","--","--","--","--","w_",":","array-like",",","shape=","[","n_features",",","n_discriminants","]","Projection","matrix","e_vals_",":","array-like",",","shape=","[","n_features","]","Eigenvalues","in","sorted","order",".","e_vecs_",":","array-like",",","shape=","[","n_features","]","Eigenvectors","in","sorted","order",".","Examples","--","--","--","--","--","-","For","usage","examples",",","please","see","https",":","\/\/rasbt.github.io\/mlxtend\/user_guide\/feature_extraction\/LinearDiscriminantAnalysis\/"]
docstr: Apply the linear transformation on X.
  
  Parameters
  ----------
  X : {array-like, sparse matrix}, shape = [n_samples, n_features]
      Training vectors, where n_samples is the number of samples and
      n_features is the number of features.
  
  Returns
  -------
  X_projected : np.ndarray, shape = [n_samples, n_discriminants]
      Projected training vectors.
docstr_tok: ["Apply","the","linear","transformation","on","X.","Parameters","--","--","--","--","--","X",":","{","array-like",",","sparse","matrix","}",",","shape","=","[","n_samples",",","n_features","]","Training","vectors",",","where","n_samples","is","the","number","of","samples","and","n_features","is","the","number","of","features",".","Returns","--","--","--","-","X_projected",":","np.ndarray",",","shape","=","[","n_samples",",","n_discriminants","]","Projected","training","vectors","."]
code: def transform(self, X):
      """Apply the linear transformation on X.
  
      Parameters
      ----------
      X : {array-like, sparse matrix}, shape = [n_samples, n_features]
          Training vectors, where n_samples is the number of samples and
          n_features is the number of features.
  
      Returns
      -------
      X_projected : np.ndarray, shape = [n_samples, n_discriminants]
          Projected training vectors.
  
      """
      if not hasattr(self, "w_"):
          raise AttributeError("Object as not been fitted, yet.")
      self._check_arrays(X=X)
      return X.dot(self.w_)
  
file_path: mlxtend/mlxtend/feature_extraction/linear_discriminant_analysis.py
imports: import numpy
  from .._base import _BaseModel
label_desc: Use image node_id 4 for calling the LinearDiscriminantAnalysis obj's underlying member method code with example usage: obj.transform(X) and returns: X