class_docstr: Linear model (scikit-learn): https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html
  
  Model backend differs depending on problem_type:
  
      'binary' & 'multiclass': https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html
  
      'regression': https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.Ridge.html#sklearn.linear_model.Ridge
docstr: Returns dict with keys: : 'continuous', 'skewed', 'onehot', 'embed', 'language', values = ordered list of feature-names falling into each category.
  Each value is a list of feature-names corresponding to columns in original dataframe.
code: def _get_types_of_features(self, df):
      """Returns dict with keys: : 'continuous', 'skewed', 'onehot', 'embed', 'language', values = ordered list of feature-names falling into each category.
      Each value is a list of feature-names corresponding to columns in original dataframe.
      """
      continuous_featnames = self._feature_metadata.get_features(
          valid_raw_types=[R_INT, R_FLOAT],
          invalid_special_types=[S_BOOL],
      )
      categorical_featnames = self._feature_metadata.get_features(
          valid_raw_types=[R_CATEGORY, R_OBJECT]
      )
      bool_featnames = self._feature_metadata.get_features(
          required_special_types=[S_BOOL]
      )
      language_featnames = (
          []
      )  # TODO: Disabled currently, have to pass raw text data features here to function properly
      return self._select_features(
          df=df,
          categorical_featnames=categorical_featnames,
          language_featnames=language_featnames,
          continuous_featnames=continuous_featnames,
          bool_featnames=bool_featnames,
      )
  
imports: import logging
  import re
  import time
  import warnings
  from collections import defaultdict
  import numpy
  from sklearn.compose import ColumnTransformer
  from sklearn.feature_extraction.text import TfidfVectorizer
  from sklearn.impute import SimpleImputer
  from sklearn.pipeline import Pipeline
  from sklearn.preprocessing import QuantileTransformer, StandardScaler
  from autogluon.common.features.types import R_BOOL, R_CATEGORY, R_FLOAT, R_INT, R_OBJECT, S_BOOL, S_TEXT_AS_CATEGORY
  from autogluon.core.constants import BINARY, REGRESSION
  from autogluon.core.models import AbstractModel
  from autogluon.core.utils.exceptions import TimeLimitExceeded
  from .hyperparameters.parameters import IGNORE, INCLUDE, ONLY, _get_solver, get_param_baseline, preprocess_params_set
  from .hyperparameters.searchspaces import get_default_searchspace
  from .lr_preprocessing_utils import NlpDataPreprocessor, OheFeaturesGenerator
label_desc: Use image node_id 4 for calling the LinearModel obj's underlying member method code with example usage: obj._get_types_of_features(df) and returns: self