docstr: return g with any nodes/edges involving the node id series removed
docstr_tok: ["return","g","with","any","nodes\/edges","involving","the","node","id","series","removed"]
code: def drop_nodes(self, nodes):
      """
      return g with any nodes/edges involving the node id series removed
      """
  
      g = self
  
      if len(nodes) == 0:
          return g
  
      g2 = g
  
      if g2._nodes is not None:
          node_hits = g2._nodes[g2._node].isin(nodes)
          if node_hits.any():
              g2 = g2.nodes(g2._nodes[~node_hits])
  
      src_hits = g2._edges[g2._source].isin(nodes)
      if src_hits.any():
          g2 = g2.edges(g2._edges[~src_hits])
  
      dst_hits = g2._edges[g2._destination].isin(nodes)
      if dst_hits.any():
          g2 = g2.edges(g2._edges[~dst_hits])
  
      return g2
  
imports: import logging, numpy, pandas
  from typing import Any, List, Union, TYPE_CHECKING
  from typing_extensions import Literal
  from graphistry.Engine import Engine, EngineAbstract
  from graphistry.Plottable import Plottable
  from graphistry.util import setup_logger
  from .chain import chain
  from .collapse import collapse_by
  from .hop import hop
  from .filter_by_dict import filter_edges_by_dict, filter_nodes_by_dict
label_desc: Use image node_id 6 for calling the ComputeMixin obj's underlying member method code with example usage: obj.drop_nodes(nodes) and returns: g2, g