标签分箱#

group label_bins

枚举

enum class inclusive#

用于定义是否包含边界点的枚举。

值:

enumerator YES#
enumerator NO#

函数

std::unique_ptr<column> label_bins(column_view const &input, column_view const &left_edges, inclusive left_inclusive, column_view const &right_edges, inclusive right_inclusive, rmm::cuda_stream_view stream = cudf::get_default_stream(), rmm::device_async_resource_ref mr = cudf::get_current_device_resource_ref())#

根据指定分箱中的成员资格标记元素。

一个区间 ileft_edges[i], right_edges[i] 定义。边缘是否包含在内分别由 left_inclusiveright_inclusive 决定。

如果 value[j] 包含在范围 left_edges[i], right_edges[i] 内(具有指定的包含性)并且 label[j] == i,则值 input[j] 属于 bin i。如果 input[j] 不属于任何 bin,则 label[j] 为 NULL。

备注:

  • 如果提供了一组空的边,input 中的所有元素都将被标记为 NULL。

  • input 中的 NULL 元素不属于任何 bin,它们对应的标签为 NULL。

  • input 中的 NaN 元素不属于任何 bin,它们对应的标签为 NULL。

  • 箱必须按单调递增的顺序提供,否则行为是未定义的。

  • 如果两个或更多的箱子重叠,行为是未定义的。

Throws:
  • cudf::logic_error – 如果 input.type() == left_edges.type() == right_edges.type() 被违反。

  • cudf::logic_error – 如果 left_edges.size() != right_edges.size()

  • cudf::logic_error – 如果 left_edges.has_nulls()right_edges.has_nulls()

Parameters:
  • input – 根据指定的区间标记输入元素。

  • left_edges – 每个区间的左边缘值。

  • left_inclusive – 左边缘是否包含在内。

  • right_edges – 每个区间的右边缘值。

  • right_inclusive – 右边界是否包含在内。

  • stream – 用于设备内存操作和内核启动的CUDA流

  • mr – 用于分配返回列的设备的设备内存资源。

Returns:

input 中元素根据指定区间的整数标签。