docstr: Return only main chain atom entries from a DataFrame
docstr_tok: ["Return","only","main","chain","atom","entries","from","a","DataFrame"]
code: def _get_mainchain(
      df: pd.DataFrame,
      invert: bool = False,
      atom_col: str = "auth_atom_id",
  ) -> pd.DataFrame:
      """Return only main chain atom entries from a DataFrame"""
      return (
          df[
              (df[atom_col] != "C")
              & (df[atom_col] != "O")
              & (df[atom_col] != "N")
              & (df[atom_col] != "CA")
          ]
          if invert
          else df[
              (df[atom_col] == "C")
              | (df[atom_col] == "O")
              | (df[atom_col] == "N")
              | (df[atom_col] == "CA")
          ]
      )
  
imports: import gzip
  import sys
  import warnings
  from typing import Dict, List, Optional
  from urllib.error import HTTPError, URLError
  from urllib.request import urlopen
  import numpy
  import pandas
  from looseversion import LooseVersion
  from ..pdb.engines import amino3to1dict
  from ..pdb.pandas_pdb import PandasPdb
  from .engines import ANISOU_DF_COLUMNS, MMCIF_PDB_COLUMN_MAP, MMCIF_PDB_NONEFIELDS, PDB_COLUMN_ORDER, mmcif_col_types
  from .mmcif_parser import load_cif_data
label_desc: Use image node_id 11 for calling the PandasMmcif obj's underlying member method code with example usage: obj._get_mainchain(df, invert, atom_col) and returns: unknown