code: def read_feather(
      source, columns=None, use_threads=True, memory_map=False, **kwargs
  ):
      """
      Read a pandas.DataFrame from Feather format. To read as pyarrow.Table use
      feather.read_table.
  
      Parameters
      ----------
      source : str file path, or file-like object
          You can use MemoryMappedFile as source, for explicitly use memory map.
      columns : sequence, optional
          Only read a specific set of columns. If not provided, all columns are
          read.
      use_threads : bool, default True
          Whether to parallelize reading using multiple threads. If false the
          restriction is used in the conversion to Pandas as well as in the
          reading from Feather format.
      memory_map : boolean, default False
          Use memory mapping when opening file on disk, when source is a str.
      **kwargs
          Additional keyword arguments passed on to `pyarrow.Table.to_pandas`.
  
      Returns
      -------
      df : pandas.DataFrame
          The contents of the Feather file as a pandas.DataFrame
      """
      return read_table(
          source,
          columns=columns,
          memory_map=memory_map,
          use_threads=use_threads,
      ).to_pandas(use_threads=use_threads, **kwargs)
  
file_path: arrow/python/pyarrow/feather.py
imports: import os
  from pyarrow.pandas_compat import _pandas_api
  from pyarrow.lib import Codec, Table, concat_tables, schema
  import pyarrow.lib
  from pyarrow import _feather
  from pyarrow._feather import FeatherError
label_desc: Use image node_id 3 for calling a global function with example usage: read_feather(source, columns, use_threads, memory_map) and returns: read_table