GPUdb C++ API  Version 5.2.0.0
gpudb::AggregateStatisticsByRangeRequest Struct Reference

A set of input parameters for aggregateStatisticsByRange(const AggregateStatisticsByRangeRequest&) const. More...

#include <gpudb/protocol/aggregate_statistics_by_range.h>

Public Member Functions

 AggregateStatisticsByRangeRequest ()
 Constructs an AggregateStatisticsByRangeRequest object with default parameter values. More...
 
 AggregateStatisticsByRangeRequest (const std::string &tableName, const std::string &selectExpression, const std::string &columnName, const std::string &valueColumnName, const std::string &stats, const double start, const double end, const double interval, const std::map< std::string, std::string > &options)
 Constructs an AggregateStatisticsByRangeRequest object with the specified parameters. More...
 

Public Attributes

std::string tableName
 
std::string selectExpression
 
std::string columnName
 
std::string valueColumnName
 
std::string stats
 
double start
 
double end
 
double interval
 
std::map< std::string, std::string > options
 

Detailed Description

A set of input parameters for aggregateStatisticsByRange(const AggregateStatisticsByRangeRequest&) const.

Divides the given set into bins and calculates statistics of the values of a value-column in each bin. The bins are based on the values of a given binning-column. The statistics that may be requested are mean, stdv (standard deviation), variance, skew, kurtosis, sum, min, max, first, last and weighted average. In addition to the requested statistics the count of total samples in each bin is returned. This counts vector is just the histogram of the column used to divide the set members into bins. The weighted average statistic requires a weight_column to be specified in options. The weighted average is then defined as the sum of the products of the value column times the weight column divided by the sum of the weight column.

There are two methods for binning the set members. In the first, which can be used for numeric valued binning-columns, a min, max and interval are specified. The number of bins, nbins, is the integer upper bound of (max-min)/interval. Values that fall in the range [min+n*interval,min+(n+1)*interval) are placed in the nth bin where n ranges from 0..nbin-2. The final bin is [min+(nbin-1)*interval,max]. In the second method, options bin_values specifies a list of binning column values. Binning-columns whose value matches the nth member of the bin_values list are placed in the nth bin. When a list is provided the binning-column must be of type string or int.

Definition at line 39 of file aggregate_statistics_by_range.h.

Constructor & Destructor Documentation

gpudb::AggregateStatisticsByRangeRequest::AggregateStatisticsByRangeRequest ( )
inline

Constructs an AggregateStatisticsByRangeRequest object with default parameter values.

Definition at line 46 of file aggregate_statistics_by_range.h.

gpudb::AggregateStatisticsByRangeRequest::AggregateStatisticsByRangeRequest ( const std::string &  tableName,
const std::string &  selectExpression,
const std::string &  columnName,
const std::string &  valueColumnName,
const std::string &  stats,
const double  start,
const double  end,
const double  interval,
const std::map< std::string, std::string > &  options 
)
inline

Constructs an AggregateStatisticsByRangeRequest object with the specified parameters.

Parameters
[in]tableNameName of the table on which the ranged-statistics operation will be performed.
[in]selectExpressionFor a non-empty expression statistics are calculated for those records for which the expression is true. Default value is an empty string.
[in]columnNameName of the binning-column used to divide the set samples into bins.
[in]valueColumnNameName of the value-column for which statistics are to be computed.
[in]statsA string of comma separated list of the statistics to calculate, e.g. 'sum,mean'. Available statistics: mean, stdv (standard deviation), variance, skew, kurtosis, sum.
[in]startThe lower bound of the binning-column.
[in]endThe upper bound of the binning-column.
[in]intervalThe interval of a bin. Set members fall into bin i if the binning-column falls in the range [start+interval*i, start+interval*(i+1)).
[in]optionsMap of optional parameters:
  • additional_column_names: A list of comma separated value-column names over which statistics can be accumulated along with the primary value_column.
  • bin_values: A list of comma separated binning-column values. Values that match the nth bin_values value are placed in the nth bin.
  • weight_column_name: Name of the column used as weighting column for the weighted_average statistic.
  • order_column_name: Name of the column used for candlestick charting techniques.
Default value is an empty std::map.

Definition at line 102 of file aggregate_statistics_by_range.h.

Member Data Documentation

std::string gpudb::AggregateStatisticsByRangeRequest::columnName

Definition at line 117 of file aggregate_statistics_by_range.h.

double gpudb::AggregateStatisticsByRangeRequest::end

Definition at line 121 of file aggregate_statistics_by_range.h.

double gpudb::AggregateStatisticsByRangeRequest::interval

Definition at line 122 of file aggregate_statistics_by_range.h.

std::map<std::string, std::string> gpudb::AggregateStatisticsByRangeRequest::options

Definition at line 123 of file aggregate_statistics_by_range.h.

std::string gpudb::AggregateStatisticsByRangeRequest::selectExpression

Definition at line 116 of file aggregate_statistics_by_range.h.

double gpudb::AggregateStatisticsByRangeRequest::start

Definition at line 120 of file aggregate_statistics_by_range.h.

std::string gpudb::AggregateStatisticsByRangeRequest::stats

Definition at line 119 of file aggregate_statistics_by_range.h.

std::string gpudb::AggregateStatisticsByRangeRequest::tableName

Definition at line 115 of file aggregate_statistics_by_range.h.

std::string gpudb::AggregateStatisticsByRangeRequest::valueColumnName

Definition at line 118 of file aggregate_statistics_by_range.h.


The documentation for this struct was generated from the following file: