Version:

/aggregate/statistics/byrange

URL: http://GPUDB_IP_ADDRESS:GPUDB_PORT/aggregate/statistics/byrange

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 input parameter 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, input parameter 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.

NOTE: The Kinetica instance being accessed must be running a CUDA (GPU-based) build to service this request.

Input Parameter Description

Name Type Description
table_name string Name of the table on which the ranged-statistics operation will be performed.
select_expression string For a non-empty expression statistics are calculated for those records for which the expression is true. The default value is ''.
column_name string Name of the binning-column used to divide the set samples into bins.
value_column_name string Name of the value-column for which statistics are to be computed.
stats string A string of comma separated list of the statistics to calculate, e.g. 'sum,mean'. Available statistics: mean, stdv (standard deviation), variance, skew, kurtosis, sum.
start double The lower bound of the binning-column.
end double The upper bound of the binning-column.
interval double The 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)).
options map of string to strings

Map of optional parameters:. The default value is an empty map ( {} ).

Supported Parameters (keys) Parameter Description
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.

Output Parameter Description

The GPUdb server embeds the endpoint response inside a standard response structure which contains status information and the actual response to the query. Here is a description of the various fields of the wrapper:

Name Type Description
status String 'OK' or 'ERROR'
message String Empty if success or an error message
data_type String 'aggregate_statistics_by_range_request' or 'none' in case of an error
data String Empty string
data_str JSON or String

This embedded JSON represents the result of the /aggregate/statistics/byrange endpoint:

Name Type Description
stats map of string to arrays of doubles A map with a key for each statistic in the stats input parameter having a value that is a vector of the corresponding value-column bin statistics. In a addition the key count has a value that is a histogram of the binning- column.

Empty string in case of an error.