code: def _df_keys(
      r_cols,
      t_cols,
      g_cols=None,
      skip_cols=RecListAnalysis.DEFAULT_SKIP_COLS,
  ):
      "Identify rec list and truth list keys."
      if g_cols is None:
          g_cols = [c for c in r_cols if c not in skip_cols]
  
      truth_key = [c for c in g_cols if c in t_cols]
      rec_key = [c for c in g_cols if c not in t_cols] + truth_key
      _log.info("using rec key columns %s", rec_key)
      _log.info("using truth key columns %s", truth_key)
      return rec_key, truth_key
  
file_path: lkpy/lenskit/topn.py
imports: import logging
  import functools
  import numpy
  import pandas
  from .metrics.topn import *
  from .util import Stopwatch
label_desc: Use image node_id 3 for calling a global function with example usage: _df_keys(r_cols, t_cols, g_cols, skip_cols) and returns: rec_key,  truth_key