19 #include <cudf/utilities/export.hpp>
35 namespace CUDF_EXPORT
cudf {
44 class simple_aggregations_collector;
45 class aggregation_finalizer;
151 [[nodiscard]]
virtual size_t do_hash()
const {
return std::hash<int>{}(kind); }
158 [[nodiscard]]
virtual std::unique_ptr<aggregation>
clone()
const = 0;
169 data_type col_type, cudf::detail::simple_aggregations_collector& collector)
const = 0;
177 virtual void finalize(cudf::detail::aggregation_finalizer& finalizer)
const = 0;
194 using aggregation::aggregation;
261 template <
typename Base = aggregation>
266 template <
typename Base = aggregation>
271 template <
typename Base = aggregation>
276 template <
typename Base = aggregation>
285 template <
typename Base = aggregation>
290 template <
typename Base = aggregation>
295 template <
typename Base = aggregation>
300 template <
typename Base = aggregation>
305 template <
typename Base = aggregation>
310 template <
typename Base = aggregation>
325 template <
typename Base = aggregation>
337 template <
typename Base = aggregation>
349 template <
typename Base = aggregation>
354 template <
typename Base = aggregation>
364 template <
typename Base = aggregation>
374 template <
typename Base = aggregation>
383 template <
typename Base = aggregation>
393 template <
typename Base = aggregation>
410 template <
typename Base = aggregation>
416 template <
typename Base = aggregation>
452 template <
typename Base = aggregation>
527 template <
typename Base = aggregation>
529 order column_order = order::ASCENDING,
531 null_order null_precedence = null_order::AFTER,
545 template <
typename Base = aggregation>
565 template <
typename Base = aggregation>
577 template <
typename Base = aggregation>
586 template <
typename Base = aggregation>
598 template <
typename Base = aggregation>
600 std::string
const& user_defined_aggregator,
612 template <
typename Base = aggregation>
626 template <
typename Base = aggregation>
651 template <
typename Base = aggregation>
670 template <
typename Base = aggregation>
681 template <
typename Base = aggregation>
694 template <
typename Base = aggregation>
707 template <
typename Base = aggregation>
745 template <
typename Base>
783 template <
typename Base>
cudf::aggregation
cudf::aggregation::get_simple_aggregations
获取此聚合所需的简单聚合。
cudf::aggregation::finalize
在计算完前置简单聚合后计算聚合结果。
cudf::aggregation::Kind
可能的聚合操作。
cudf::aggregation::PRODUCT
积归约
cudf::aggregation::ALL
与均值之差的平方和
cudf::aggregation::TDIGEST
从一组输入值创建 tdigest
cudf::aggregation::MEAN
算术平均归约
cudf::aggregation::MERGE_M2
合并 M2 聚合的部分值,
cudf::aggregation::PTX
基于 PTX 的 UDF 聚合。
cudf::aggregation::MERGE_SETS
将多个列表值合并到一个列表中,然后删除重复条目
cudf::aggregation::MEDIAN
中位数归约
cudf::aggregation::NUNIQUE
计算唯一元素的数量
cudf::aggregation::ARGMIN
最小元素的索引。
cudf::aggregation::VARIANCE
方差
cudf::aggregation::CORRELATION
两组元素之间的相关性
cudf::aggregation::STD
标准差
cudf::aggregation::QUANTILE
计算指定的分位数
cudf::aggregation::COVARIANCE
两组元素之间的协方差
cudf::aggregation::MAX
最大值归约
cudf::aggregation::MIN
最小值归约
cudf::aggregation::COLLECT_SET
将值收集到一个列表中,不包含重复条目
cudf::aggregation::LAG
窗口函数,访问当前行之前指定偏移量的行
cudf::aggregation::CUDA
基于 CUDA 的 UDF 聚合。
cudf::aggregation::LEAD
窗口函数,访问当前行之后指定偏移量的行
cudf::aggregation::SUM_OF_SQUARES
平方和归约
cudf::aggregation::SUM
求和归约
cudf::aggregation::NTH_ELEMENT
获取第 n 个元素
cudf::aggregation::EWMA
获取当前索引的指数加权移动平均值
cudf::aggregation::MERGE_LISTS
将多个列表值合并到一个列表中
cudf::aggregation::MERGE_TDIGEST
通过合并多个 tdigest 创建一个 tdigest
cudf::aggregation::HOST_UDF
基于 host 的 UDF 聚合
cudf::aggregation::ANY
任意归约
cudf::aggregation::COLLECT_LIST
将值收集到一个列表中
cudf::aggregation::COUNT_VALID
计算有效元素的数量
cudf::aggregation::ROW_NUMBER
获取当前索引的行号(相对于滚动窗口)
cudf::aggregation::ARGMAX
最大元素的索引。
cudf::aggregation::HISTOGRAM
计算每个元素的频率
cudf::aggregation::RANK
获取当前索引的排名
cudf::aggregation::COUNT_ALL
计算元素的数量
cudf::aggregation::is_equal
比较两个聚合对象是否相等。
cudf::aggregation::aggregation
构造一个新的聚合对象。
cudf::aggregation::do_hash
计算聚合的哈希值。
cudf::aggregation::clone
克隆聚合对象。
cudf::aggregation::kind
cudf::groupby_aggregation
cudf::groupby_scan_aggregation
cudf::rolling_aggregation
cudf::segmented_reduce_aggregation
cudf::make_median_aggregation
相关方法类型。
cudf::make_host_udf_aggregation
创建 HOST_UDF 聚合的工厂函数。
cudf::make_lag_aggregation
创建 LAG 聚合的工厂函数。
cudf::make_tdigest_aggregation
创建 TDIGEST 聚合的工厂函数。
cudf::rank_percentage
返回的排名是否应为百分比,并提及百分比归一化类型。
cudf::make_covariance_aggregation
创建 COVARIANCE 聚合的工厂函数。
cudf::make_std_aggregation
创建 STD 聚合的工厂函数。
cudf::make_correlation_aggregation
创建 CORRELATION 聚合的工厂函数。
cudf::make_merge_sets_aggregation
创建 MERGE_SETS 聚合的工厂函数。
cudf::make_variance_aggregation
创建 VARIANCE 聚合的工厂函数。
cudf::make_lead_aggregation
创建 LEAD 聚合的工厂函数。
cudf::make_any_aggregation
cudf::make_nunique_aggregation
创建 NUNIQUE 聚合的工厂函数。
cudf::make_max_aggregation
cudf::make_histogram_aggregation
cudf::make_rank_aggregation
创建 RANK 聚合的工厂函数。
cudf::make_udf_aggregation
创建基于 PTX 或 CUDA 的 UDF 聚合的工厂函数。
cudf::make_row_number_aggregation
cudf::make_merge_histogram_aggregation
创建 MERGE_HISTOGRAM 聚合的工厂函数。
cudf::make_count_aggregation
创建 COUNT 聚合的工厂函数。
cudf::ewm_history
EWM 输入值第一个值的处理类型。
cudf::make_collect_list_aggregation
创建 COLLECT_LIST 聚合的工厂函数。
cudf::make_argmax_aggregation
创建 ARGMAX 聚合的工厂函数。
cudf::make_sum_aggregation
cudf::make_all_aggregation
cudf::make_m2_aggregation
创建 M2 聚合的工厂函数。
cudf::make_merge_m2_aggregation
创建 MERGE_M2 聚合的工厂函数。
cudf::make_sum_of_squares_aggregation
cudf::make_min_aggregation
cudf::make_product_aggregation
cudf::make_nth_element_aggregation
创建 NTH_ELEMENT 聚合的工厂函数。
cudf::udf_type
用户定义函数字符串中的代码类型。
cudf::make_ewma_aggregation
创建 EWMA 聚合的工厂函数。
cudf::make_merge_lists_aggregation
创建 MERGE_LISTS 聚合的工厂函数。
cudf::make_collect_set_aggregation
创建 COLLECT_SET 聚合的工厂函数。
cudf::make_argmin_aggregation
创建 ARGMIN 聚合的工厂函数。
cudf::make_quantile_aggregation
创建 QUANTILE 聚合的工厂函数。
cudf::make_mean_aggregation
cudf::make_merge_tdigest_aggregation
创建 MERGE_TDIGEST 聚合的工厂函数。
cudf::rank_percentage::ONE_NORMALIZED
(排名 - 1) / (计数 - 1)
cudf::rank_percentage::ZERO_NORMALIZED
返回与请求分位数对应的输入行。
cudf::rank_method
用于对列进行排名时使用的平局处理方法。
cudf::rank_method::DENSE
组之间排名总是增加 1
cudf::rank_method::AVERAGE
组内第一个值的均值
cudf::rank_method::MAX
最大值归约
cudf::rank_method::FIRST
稳定排序顺序排名(无平局)
cudf::rank_method::MIN
指示空值如何与所有其他值进行比较。
cudf::null_equality
枚举,用于判断两个空值是否相等。
cudf::size_type
列和表的行索引类型。
cudf::null_policy
枚举,用于指定是包含空值还是排除空值。
cudf::order
指示元素应按什么顺序排序。
cudf::interpolation
当所需分位数介于两个数据点 i 和 j 之间时使用的插值方法。
cudf::nan_equality
枚举,用于判断持有 NaN 值的不同元素(浮点类型)是否相等。
cuDF 接口