文件 | |
| 文件 | round.hpp |
| round 的列 API。 | |
| 文件 | unary.hpp |
| 一元操作的列 API。 | |
枚举 | |
| enum class | cudf::rounding_method : int32_t { HALF_UP , HALF_EVEN } |
| `cudf::round` 的不同舍入方法更多... | |
| enum class | cudf::unary_operator : int32_t { cudf::SIN , cudf::COS , cudf::TAN , cudf::ARCSIN , cudf::ARCCOS , cudf::ARCTAN , cudf::SINH , cudf::COSH , cudf::TANH , cudf::ARCSINH , cudf::ARCCOSH , cudf::ARCTANH , cudf::EXP , cudf::LOG , cudf::SQRT , cudf::CBRT , cudf::CEIL , cudf::FLOOR , cudf::ABS , cudf::RINT , cudf::BIT_INVERT , cudf::NOT , cudf::NEGATE } |
| 可对数据执行的一元操作类型。更多... | |
函数 | |
| std::unique_ptr< column > | cudf::round (column_view const &input, int32_t decimal_places=0, rounding_method method=rounding_method::HALF_UP, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
| 将列中的所有值舍入到指定的小数位数。更多... | |
| template<typename Fixed , typename Floating , CUDF_ENABLE_IF(cuda::std::is_floating_point_v< Floating > &&is_fixed_point< Fixed >()) > | |
| CUDF_HOST_DEVICE Fixed | cudf::convert_floating_to_fixed (Floating floating, numeric::scale_type scale) |
| 将浮点值转换为定点。更多... | |
| template<typename Floating , typename Fixed , CUDF_ENABLE_IF(cuda::std::is_floating_point_v< Floating > &&is_fixed_point< Fixed >()) > | |
| CUDF_HOST_DEVICE Floating | cudf::convert_fixed_to_floating (Fixed fixed) |
| 将定点值转换为浮点。更多... | |
| template<typename Floating , typename Input , CUDF_ENABLE_IF(cuda::std::is_floating_point_v< Floating >) > | |
| CUDF_HOST_DEVICE Floating | cudf::convert_to_floating (Input input) |
| 将值转换为浮点。更多... | |
| std::unique_ptr< cudf::column > | cudf::unary_operation (cudf::column_view const &input, cudf::unary_operator op, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
| 对列中的所有值执行一元操作。更多... | |
| std::unique_ptr< cudf::column > | cudf::is_null (cudf::column_view const &input, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
| 创建一个 `type_id::BOOL8` 元素的列,其中 `input` 中每个元素对应的 `true` 表示值为空,`false` 表示值有效。更多... | |
| std::unique_ptr< cudf::column > | cudf::is_valid (cudf::column_view const &input, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
| 创建一个 `type_id::BOOL8` 元素的列,其中 `input` 中每个元素对应的 `true` 表示值有效,`false` 表示值为空。更多... | |
| std::unique_ptr< column > | cudf::cast (column_view const &input, data_type out_type, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
| 将输入中指定数据类型的数据转换为输出中指定数据类型。更多... | |
| bool | cudf::is_supported_cast (data_type from, data_type to) noexcept |
| 检查是否支持两种数据类型之间的转换。更多... | |
| std::unique_ptr< column > | cudf::is_nan (cudf::column_view const &input, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
| 创建一个 `type_id::BOOL8` 元素的列,指示浮点值列中是否存在 `NaN` 值。输出中行 `i` 的元素为 `true`,如果 `input` 中行 i 的元素是 `NAN`,否则为 `false`更多... | |
| std::unique_ptr< column > | cudf::is_not_nan (cudf::column_view const &input, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
| 创建一个 `type_id::BOOL8` 元素的列,指示浮点值列中不存在 `NaN` 值。输出中行 `i` 的元素为 `false`,如果 `input` 中行 i 的元素是 `NAN`,否则为 `true`更多... | |
|
强 |
`cudf::round` 的不同舍入方法
HALF_EVEN 舍入信息: https://en.wikipedia.org/wiki/Rounding#Rounding_half_to_even HALF_UP 舍入信息: https://en.wikipedia.org/wiki/Rounding#Rounding_half_away_from_zero 注意:HALF_UP 指朝向*幅值*增大方向:远离零!这是因为 Java 和 Python 的定义方式。
|
强 |
可对数据执行的一元操作类型。
| std::unique_ptr<column> cudf::cast | ( | column_view const & | input, |
| data_type | out_type, | ||
| rmm::cuda_stream_view | stream = cudf::get_default_stream(), |
||
| rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
| ) |
将输入中指定数据类型的数据转换为输出中指定数据类型。
仅支持固定宽度类型。
| input | 输入列 |
| out_type | 输出列的期望数据类型 |
| stream | 用于设备内存操作和内核启动的 CUDA stream |
| mr | 用于分配返回列设备内存的设备内存资源 |
| cudf::logic_error | 如果 `out_type` 不是固定宽度类型 |
| CUDF_HOST_DEVICE Floating cudf::convert_fixed_to_floating | ( | Fixed | fixed | ) |
| CUDF_HOST_DEVICE Fixed cudf::convert_floating_to_fixed | ( | Floating | floating, |
| numeric::scale_type | scale | ||
| ) |
| CUDF_HOST_DEVICE Floating cudf::convert_to_floating | ( | Input | input | ) |
| std::unique_ptr<column> cudf::is_nan | ( | cudf::column_view const & | input, |
| rmm::cuda_stream_view | stream = cudf::get_default_stream(), |
||
| rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
| ) |
创建一个 `type_id::BOOL8` 元素的列,指示浮点值列中是否存在 `NaN` 值。输出中行 `i` 的元素为 `true`,如果 `input` 中行 i 的元素是 `NAN`,否则为 `false`
| cudf::logic_error | 如果 `input` 是非浮点类型 |
| input | 浮点元素列 |
| stream | 用于设备内存操作和内核启动的 CUDA stream |
| mr | 用于分配返回列设备内存的设备内存资源 |
| std::unique_ptr<column> cudf::is_not_nan | ( | cudf::column_view const & | input, |
| rmm::cuda_stream_view | stream = cudf::get_default_stream(), |
||
| rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
| ) |
创建一个 `type_id::BOOL8` 元素的列,指示浮点值列中不存在 `NaN` 值。输出中行 `i` 的元素为 `false`,如果 `input` 中行 i 的元素是 `NAN`,否则为 `true`
| cudf::logic_error | 如果 `input` 是非浮点类型 |
| input | 浮点元素列 |
| stream | 用于设备内存操作和内核启动的 CUDA stream |
| mr | 用于分配返回列设备内存的设备内存资源 |
| std::unique_ptr<cudf::column> cudf::is_null | ( | cudf::column_view const & | input, |
| rmm::cuda_stream_view | stream = cudf::get_default_stream(), |
||
| rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
| ) |
创建一个 `type_id::BOOL8` 元素的列,其中 `input` 中每个元素对应的 `true` 表示值为空,`false` 表示值有效。
| input | 输入为一个 `column_view` |
| stream | 用于设备内存操作和内核启动的 CUDA stream |
| mr | 用于分配返回列设备内存的设备内存资源 |
检查是否支持两种数据类型之间的转换。
| from | 源类型 |
| to | 目标类型 |
| std::unique_ptr<cudf::column> cudf::is_valid | ( | cudf::column_view const & | input, |
| rmm::cuda_stream_view | stream = cudf::get_default_stream(), |
||
| rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
| ) |
创建一个 `type_id::BOOL8` 元素的列,其中 `input` 中每个元素对应的 `true` 表示值有效,`false` 表示值为空。
| input | 输入为一个 `column_view` |
| stream | 用于设备内存操作和内核启动的 CUDA stream |
| mr | 用于分配返回列设备内存的设备内存资源 |
| std::unique_ptr<column> cudf::round | ( | column_view const & | input, |
| int32_t | decimal_places = 0, |
||
| rounding_method | method = rounding_method::HALF_UP, |
||
| rmm::cuda_stream_view | stream = cudf::get_default_stream(), |
||
| rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
| ) |
将列中的所有值舍入到指定的小数位数。
`cudf::round` 当前支持对整数、浮点数以及 `decimal32` 和 `decimal64` 数字进行 HALF_UP 和 HALF_EVEN 舍入。对于 `decimal32` 和 `decimal64` 数字,负的 `numeric::scale` 等同于 `decimal_places`。
示例
| input | 要舍入的值列 |
| decimal_places | 舍入到的小数位数(默认为 0)。如果为负数,则指定小数点左侧的位数。 |
| method | 舍入方法 |
| stream | 用于设备内存操作和内核启动的 CUDA stream |
| mr | 用于分配返回列设备内存的设备内存资源 |
| std::unique_ptr<cudf::column> cudf::unary_operation | ( | cudf::column_view const & | input, |
| cudf::unary_operator | op, | ||
| rmm::cuda_stream_view | stream = cudf::get_default_stream(), |
||
| rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
| ) |
对列中的所有值执行一元操作。
注意:对于 `decimal32` 和 `decimal64`,仅支持 `ABS`、`CEIL` 和 `FLOOR`。
| input | 输入为一个 `column_view` |
| op | 要执行的操作 |
| stream | 用于设备内存操作和内核启动的 CUDA stream |
| mr | 用于分配返回列设备内存的设备内存资源 |