class_docstr: Detect columns which contain a mix of numerical and string values.
  
  Parameters
  ----------
  columns : Union[Hashable, List[Hashable]] , default: None
      Columns to check, if none are given checks all columns
      except ignored ones.
  ignore_columns : Union[Hashable, List[Hashable]] , default: None
      Columns to ignore, if none given checks based on columns
      variable.
  n_top_columns : int , optional
      amount of columns to show ordered by feature importance (date, index, label are first)
  n_samples : int , default: 10_000_000
      number of samples to use for this check.
  random_state : int, default: 42
      random seed for all check internals.
docstr: Run check.
  
  Returns
  -------
  CheckResult
      value is a dict where the key is the column name as key and the value is the ratio 'strings' and 'numbers'
      for any column with mixed data types.
      numbers will also include hidden numbers in string representation.
docstr_tok: ["Run","check",".","Returns","--","--","--","-","CheckResult","value","is","a","dict","where","the","key","is","the","column","name","as","key","and","the","value","is","the","ratio","'strings","'","and","'numbers'","for","any","column","with","mixed","data","types",".","numbers","will","also","include","hidden","numbers","in","string","representation","."]
code: def run_logic(self, context: Context, dataset_kind) -> CheckResult:
      """Run check.
  
      Returns
      -------
      CheckResult
          value is a dict where the key is the column name as key and the value is the ratio 'strings' and 'numbers'
          for any column with mixed data types.
          numbers will also include hidden numbers in string representation.
      """
      dataset = context.get_data_by_kind(dataset_kind).sample(
          self.n_samples, random_state=self.random_state
      )
      feature_importance = context.feature_importance
  
      df = select_from_dataframe(
          dataset.data, self.columns, self.ignore_columns
      )
  
      # Result value: { Column Name: {string: pct, numbers: pct}}
      display_dict = {}
      result_dict = {}
  
      for column_name in df.columns:
          column_data = df[column_name].dropna()
          mix = self._get_data_mix(column_data)
          result_dict[column_name] = mix
          if context.with_display and mix:
              # Format percents for display
              formated_mix = {}
              formated_mix["Strings"] = format_percent(mix["strings"])
              formated_mix["Numbers"] = format_percent(mix["numbers"])
              formated_mix["Strings examples"] = [
                  truncate_string(strr, 15)
                  for strr in mix["strings_examples"]
              ]
              formated_mix["Numbers examples"] = (
                  "["
                  + format_list(
                      [
                          format_number(float(num))
                          for num in mix["numbers_examples"]
                      ]
                  )
                  + "]"
              )
              display_dict[column_name] = formated_mix
  
      if display_dict:
          df_graph = pd.DataFrame.from_dict(display_dict)
          df_graph = column_importance_sorter_df(
              df_graph.T,
              dataset,
              feature_importance,
              self.n_top_columns,
          ).T
          display = [N_TOP_MESSAGE % self.n_top_columns, df_graph]
      else:
          display = None
  
      return CheckResult(result_dict, display=display)
  
file_path: deepchecks/deepchecks/tabular/checks/data_integrity/mixed_data_types.py
imports: from typing import List, Tuple, Union
  import numpy
  import pandas
  from deepchecks.core import CheckResult, ConditionCategory, ConditionResult
  from deepchecks.tabular import Context, SingleDatasetCheck
  from deepchecks.tabular.utils.feature_importance import N_TOP_MESSAGE, column_importance_sorter_df
  from deepchecks.utils.dataframes import select_from_dataframe
  from deepchecks.utils.strings import format_list, format_number, format_percent, is_string_column, truncate_string
  from deepchecks.utils.typing import Hashable
label_desc: Use image node_id 2 for calling the MixedDataTypes obj's underlying member method code with example usage: obj.run_logic(context, dataset_kind) and returns: CheckResult