code: def __remove_dates_from_features(self, silent_mode: bool = False):
      # self.logger.info("Remove date columns from features")
  
      removed_features = []
      for f in self.__features():
          if is_datetime(self.data[f]) or is_period_dtype(self.data[f]):
              removed_features.append(f)
              self.data.drop(columns=f, inplace=True)
              del self.meaning_types_checked[f]
  
      if removed_features:
          msg = bundle.get("dataset_date_features").format(
              removed_features
          )
          self.logger.warning(msg)
          if not silent_mode:
              print(msg)
          self.warning_counter.increment()
  
imports: import csv
  import hashlib
  import logging
  import tempfile
  import time
  from ipaddress import IPv4Address, IPv6Address, _BaseAddress, ip_address
  from pathlib import Path
  from typing import Any, Callable, Dict, List, Optional, Tuple, Union
  import numpy
  import pandas
  from pandas.api.types import is_bool_dtype
  from pandas.api.types import is_datetime64_any_dtype
  from pandas.api.types import is_float_dtype, is_integer_dtype, is_numeric_dtype, is_string_dtype
  from pandas.core.dtypes.common import is_period_dtype
  from upgini.errors import ValidationError
  from upgini.http import ProgressStage, SearchProgress, get_rest_client
  from upgini.metadata import EVAL_SET_INDEX, SYSTEM_COLUMNS, SYSTEM_RECORD_ID, TARGET, DataType, FeaturesFilter, FileColumnMeaningType, FileColumnMetadata, FileMetadata, FileMetrics, ModelTaskType, NumericInterval, RuntimeParameters, SearchCustomization
  from upgini.normalizer.phone_normalizer import PhoneNormalizer
  from upgini.resource_bundle import bundle
  from upgini.sampler.random_under_sampler import RandomUnderSampler
  from upgini.search_task import SearchTask
  from upgini.utils import combine_search_keys
  from upgini.utils.email_utils import EmailSearchKeyConverter
  from upgini.utils.warning_counter import WarningCounter
label_desc: Use image node_id 31 for calling the Dataset obj's underlying member method code with example usage: obj.__remove_dates_from_features(silent_mode) without return types