nvtabular.ops.ReduceDtypeSize

class nvtabular.ops.ReduceDtypeSize(float_dtype=<class 'numpy.float32'>)[source]

Bases: nvtabular.ops.stat_operator.StatOperator

ReduceDtypeSize changes the dtypes of numeric columns. For integer columns this will choose a dtype such that the minimum and maximum values in the column will fit. For float columns this will cast to a float32.

__init__(float_dtype=<class 'numpy.float32'>)[source]

Methods

__init__([float_dtype])

clear()

zero and reinitialize all relevant statistical properties

column_mapping(col_selector)

compute_column_schema(col_name, input_schema)

compute_input_schema(root_schema, …)

Given the schemas coming from upstream sources and a column selector for the input columns, returns a set of schemas for the input columns this operator will use :param root_schema: Base schema of the dataset before running any operators.

compute_output_schema(input_schema, selector)

Given a set of schemas and a column selector for the input columns, returns a set of schemas for the transformed columns this operator will produce :param input_schema: The schemas of the columns to apply this operator to :type input_schema: Schema :param col_selector: The column selector to apply to the input schema :type col_selector: ColumnSelector

compute_selector(input_schema, selector, …)

create_node(selector)

fit(col_selector, ddf)

Calculate statistics for this operator, and return a dask future to these statistics, which will be computed by the workflow.

fit_finalize(dask_stats)

Finalize statistics calculation - the workflow calls this function with the computed statistics from the ‘fit’ object’

inference_initialize(col_selector, model_config)

Configures this operator for use in inference.

output_column_names(col_selector)

Given a set of columns names returns the names of the transformed columns this operator will produce :param columns: The columns to apply this operator to :type columns: list of str, or list of list of str

set_storage_path(new_path[, copy])

Certain stat operators need external storage - for instance Categorify writes out parquet files containing the categorical mapping.

transform(col_selector, df)

Transform the dataframe by applying this operator to the set of input columns

Attributes

dependencies

Defines an optional list of column dependencies for this operator.

dynamic_dtypes

label

output_dtype

output_properties

output_tags

supports

Returns what kind of data representation this operator supports

fit(col_selector: merlin.dag.selector.ColumnSelector, ddf: dask.dataframe.core.DataFrame)[source]

Calculate statistics for this operator, and return a dask future to these statistics, which will be computed by the workflow.

fit_finalize(dask_stats)[source]

Finalize statistics calculation - the workflow calls this function with the computed statistics from the ‘fit’ object’

clear()[source]

zero and reinitialize all relevant statistical properties

transform(col_selector: merlin.dag.selector.ColumnSelector, df: pandas.core.frame.DataFrame)pandas.core.frame.DataFrame[source]

Transform the dataframe by applying this operator to the set of input columns

Parameters
  • columns (list of str or list of list of str) – The columns to apply this operator to

  • df (Dataframe) – A pandas or cudf dataframe that this operator will work on

Returns

Returns a transformed dataframe for this operator

Return type

DataFrame

compute_output_schema(input_schema, selector, prev_output_schema=None)[source]

Given a set of schemas and a column selector for the input columns, returns a set of schemas for the transformed columns this operator will produce :param input_schema: The schemas of the columns to apply this operator to :type input_schema: Schema :param col_selector: The column selector to apply to the input schema :type col_selector: ColumnSelector

Returns

The schemas of the columns produced by this operator

Return type

Schema