Loading TOC...
Matches for cat:function/javascript (cat:function (cat:function ((cts:reference) AND cat:function))) have been highlighted. remove

MarkLogic Server 11.0 Product Documentation
cts.varianceP

cts.varianceP(
   range-index as cts.reference,
   [options as String[]],
   [query as cts.query?],
   [forest-ids as (Number|String)[]]
) as Number?

Summary

Returns a frequency-weighted variance of the population given a value lexicon. This function works like math:variance-p except each item in the lexicon is counted cts:frequency times. This function performs the calculation in parallel in all data nodes then aggregates the values. The function returns the empty sequence if the lexicon contains no value.

Parameters
range-index Reference to a range index. The type of the range index must be numeric.
options Same as the "options" parameter in cts:aggregate.
query Same as the "query" parameter in cts:aggregate.
forest-ids Same as the "forest-ids" parameter in cts:aggregate.

Example

//   This query assumes an int range index
//   is configured in the database. It
//   generates some sample data and then
//   performs the aggregation in a separate
//   transaction.

declareUpdate();

for (x=1; x<11; x++) {
  let o = new Object();
  o.int = [];
  for (y=x; y<11; y++) {
    o.int.push(y);
  };
  xdmp.documentInsert((x + ".json"), o);
};

*******
// Then run the following (requires int range index on int):

const item = cts.varianceP(
  cts.jsonPropertyReference("int","type=int"),
    ["item-frequency","concurrent"]);
const frag = cts.varianceP(
  cts.jsonPropertyReference("int","type=int"),
    ["fragment-frequency","concurrent"]);
const res = new Array();
res.push(item);
res.push(frag);
res;
=>
[6, 6]

Stack Overflow iconStack Overflow: Get the most useful answers to questions from the MarkLogic community, or ask your own question.