class_docstr: The internal field to store the dtype as well as the Spark's StructField optionally.
  
  Parameters
  ----------
  dtype : numpy.dtype or pandas' ExtensionDtype
      The dtype for the field
  struct_field : StructField, optional
      The `StructField` for the field. If None, InternalFrame will properly set.
class_docstr_tok: ["The","internal","field","to","store","the","dtype","as","well","as","the","Spark","'s","StructField","optionally",".","Parameters","--","--","--","--","--","dtype",":","numpy.dtype","or","pandas","'","ExtensionDtype","The","dtype","for","the","field","struct_field",":","StructField",",","optional","The","`","StructField","`","for","the","field",".","If","None",",","InternalFrame","will","properly","set","."]
docstr: Copy the InternalField object.
docstr_tok: ["Copy","the","InternalField","object","."]
code: def copy(
      self,
      *,
      name: Union[str, _NoValueType] = _NoValue,
      dtype: Union[Dtype, _NoValueType] = _NoValue,
      spark_type: Union[DataType, _NoValueType] = _NoValue,
      nullable: Union[bool, _NoValueType] = _NoValue,
      metadata: Union[
          Optional[Dict[str, Any]], _NoValueType
      ] = _NoValue,
  ) -> "InternalField":
      """Copy the InternalField object."""
      if name is _NoValue:
          name = self.name
      if dtype is _NoValue:
          dtype = self.dtype
      if spark_type is _NoValue:
          spark_type = self.spark_type
      if nullable is _NoValue:
          nullable = self.nullable
      if metadata is _NoValue:
          metadata = self.metadata
      return InternalField(
          dtype=cast(Dtype, dtype),
          struct_field=StructField(
              name=cast(str, name),
              dataType=cast(DataType, spark_type),
              nullable=cast(bool, nullable),
              metadata=cast(Optional[Dict[str, Any]], metadata),
          ),
      )
  
imports: import re
  from typing import Any, Dict, List, Optional, Sequence, Tuple, Union, TYPE_CHECKING, cast
  import numpy
  import pandas
  from pandas.api.types import CategoricalDtype
  from pyspark._globals import _NoValue, _NoValueType
  from pyspark.sql import functions, Column, DataFrame, Window
  from pyspark.sql.types import BooleanType, DataType, LongType, StructField, StructType, StringType
  from pyspark.sql.utils import is_timestamp_ntz_preferred
  from pyspark.sql.utils import is_remote, get_column_class, get_dataframe_class
  from pyspark import pandas
  from pyspark.pandas._typing import Label
  from pyspark.pandas.spark.utils import as_nullable_spark_type, force_decimal_precision_scale
  from pyspark.pandas.data_type_ops.base import DataTypeOps
  from pyspark.pandas.typedef import Dtype, as_spark_type, extension_dtypes, infer_pd_series_spark_type, spark_type_to_pandas_dtype
  from pyspark.pandas.utils import column_labels_level, default_session, is_name_like_tuple, is_testing, lazy_property, name_like_string, scol_for, spark_column_equals
label_desc: Use image node_id 11 for calling the InternalField obj's underlying member method code with example usage: obj.copy() and returns: InternalField