class_docstr: The cuDFInterface allows a Dataset objects to wrap a cuDF
  DataFrame object. Using cuDF allows working with columnar
  data on a GPU. Most operations leave the data in GPU memory,
  however to plot the data it has to be loaded into memory.
  
  The cuDFInterface covers almost the complete API exposed
  by the PandasInterface with two notable exceptions:
  
  1) Aggregation and groupby do not have a consistent sort order
     (see https://github.com/rapidsai/cudf/issues/4237)
  3) Not all functions can be easily applied to a cuDF so
     some functions applied with aggregate and reduce will not work.
class_docstr_tok: ["The","cuDFInterface","allows","a","Dataset","objects","to","wrap","a","cuDF","DataFrame","object",".","Using","cuDF","allows","working","with","columnar","data","on","a","GPU",".","Most","operations","leave","the","data","in","GPU","memory",",","however","to","plot","the","data","it","has","to","be","loaded","into","memory",".","The","cuDFInterface","covers","almost","the","complete","API","exposed","by","the","PandasInterface","with","two","notable","exceptions",":","1",")","Aggregation","and","groupby","do","not","have","a","consistent","sort","order","(","see","https",":","\/\/github.com\/rapidsai\/cudf\/issues\/4237",")","3",")","Not","all","functions","can","be","easily","applied","to","a","cuDF","so","some","functions","applied","with","aggregate","and","reduce","will","not","work","."]
code: def add_dimension(cls, dataset, dimension, dim_pos, values, vdim):
      data = dataset.data.copy()
      if dimension.name not in data:
          data[dimension.name] = values
      return data
  
imports: import sys
  import warnings
  from itertools import product
  import numpy
  import pandas
  from ..None import util
  from ..dimension import dimension_name
  from ..element import Element
  from ..ndmapping import NdMapping, item_check, sorted_context
  from .interface import DataError, Interface
  from .pandas import PandasInterface
  from .util import finite_range
label_desc: Use image node_id 10 for calling the cuDFInterface obj's underlying member method code with example usage: obj.add_dimension(cls, dataset, dimension, dim_pos, values, vdim) and returns: data