How to use the simple-statistics.median function in simple-statistics

To help you get started, we’ve selected a few simple-statistics examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github RequestNetwork / requestNetwork / packages / prototype-estimator / src / calculateLatency.ts View on Github external
);
  }
  if (getTransactionsByChannelIdCount > 0) {
    console.log(`\ngetTransactionsByChannelId statistics`);
    console.log(`average: ${simpleStatistics.mean(getTransactionsByChannelIdTimes)}`);
    console.log(`median: ${simpleStatistics.median(getTransactionsByChannelIdTimes)}`);
    console.log(`min: ${simpleStatistics.min(getTransactionsByChannelIdTimes)}`);
    console.log(`max: ${simpleStatistics.max(getTransactionsByChannelIdTimes)}`);
    console.log(
      `standard deviation: ${simpleStatistics.standardDeviation(getTransactionsByChannelIdTimes)}`,
    );
  }
  if (persistTransactionCount > 0) {
    console.log(`\npersistTransaction statistics`);
    console.log(`average: ${simpleStatistics.mean(persistTransactionTimes)}`);
    console.log(`median: ${simpleStatistics.median(persistTransactionTimes)}`);
    console.log(`min: ${simpleStatistics.min(persistTransactionTimes)}`);
    console.log(`max: ${simpleStatistics.max(persistTransactionTimes)}`);
    console.log(
      `standard deviation: ${simpleStatistics.standardDeviation(persistTransactionTimes)}`,
    );
  }
});
github RequestNetwork / requestNetwork / packages / prototype-estimator / src / calculateLatency.ts View on Github external
console.log(`${persistTransactionCount} persistTransaction requests`);

  if (getChannelsByTopicCount > 0) {
    console.log(`\ngetChannelsByTopic statistics`);
    console.log(`average: ${simpleStatistics.mean(getChannelsByTopicTimes)}`);
    console.log(`median: ${simpleStatistics.median(getChannelsByTopicTimes)}`);
    console.log(`min: ${simpleStatistics.min(getChannelsByTopicTimes)}`);
    console.log(`max: ${simpleStatistics.max(getChannelsByTopicTimes)}`);
    console.log(
      `standard deviation: ${simpleStatistics.standardDeviation(getChannelsByTopicTimes)}`,
    );
  }
  if (getTransactionsByChannelIdCount > 0) {
    console.log(`\ngetTransactionsByChannelId statistics`);
    console.log(`average: ${simpleStatistics.mean(getTransactionsByChannelIdTimes)}`);
    console.log(`median: ${simpleStatistics.median(getTransactionsByChannelIdTimes)}`);
    console.log(`min: ${simpleStatistics.min(getTransactionsByChannelIdTimes)}`);
    console.log(`max: ${simpleStatistics.max(getTransactionsByChannelIdTimes)}`);
    console.log(
      `standard deviation: ${simpleStatistics.standardDeviation(getTransactionsByChannelIdTimes)}`,
    );
  }
  if (persistTransactionCount > 0) {
    console.log(`\npersistTransaction statistics`);
    console.log(`average: ${simpleStatistics.mean(persistTransactionTimes)}`);
    console.log(`median: ${simpleStatistics.median(persistTransactionTimes)}`);
    console.log(`min: ${simpleStatistics.min(persistTransactionTimes)}`);
    console.log(`max: ${simpleStatistics.max(persistTransactionTimes)}`);
    console.log(
      `standard deviation: ${simpleStatistics.standardDeviation(persistTransactionTimes)}`,
    );
  }
github mozilla-frontend-infra / firefox-health-dashboard / src / perf.js View on Github external
channels: nightlyToRelease.map((channel, i) => {
          if (!evolutions[i]) {
            return null;
          }
          const submissionsAvg = median(evolutions[i].map(date => date.submissions));
          const countAvg = median(evolutions[i].map(date => date.count));
          const cutoff = submissionsAvg * 0.5;
          const dates = averageEvolution(
            evolutions[i]
              .map((histogram, j, date) => {
                if (histogram.submissions < cutoff) {
                  return null;
                }
                return Object.assign(summarizeHistogram(histogram), {
                  date: moment(date).format('YYYY-MM-DD'),
                });
              })
              .filter(entry => entry && entry.p50),
          );
          return {
            channel: channel,
            submissionsAvg: submissionsAvg,
github coinbase / coinbase-pro-trading-toolkit / src / FXService / calculators / RobustCalculator.ts View on Github external
update.valid[i] = true;
            update.errors[i] = null;
            update.rejectReason[i] = 0;
            update.prices[i] = rate.rate.toNumber();
            prices.push(update.prices[i]);
            const lastPrice: number = update.lastPrice[i];
            update.deltas[i] = lastPrice ? update.prices[i] - lastPrice : 0;
            delta.push(update.deltas[i]);
        });
        this.report.data[_pair] = update;
        const numValid = prices.length;
        if (numValid < this.minNumberOfReliableSources) {
            return null;
        }
        const medianPrice = ss.median(prices);
        const medianDelta = ss.median(delta);
        let numReliablePrices = 0;
        let sum = 0;
        const threshold = this.priceThreshold * medianPrice;
        const deltaThreshold = this.deltaThreshold * medianPrice;
        for (let i = 0; i < numValid; i++) {
            const priceDeviation = Math.abs(prices[i] - medianPrice);
            const gradDeviation = Math.abs(delta[i] - medianDelta);
            if (priceDeviation >= threshold) {
                update.rejectReason[i] = PRICE_DEVIATION_ERROR;
            }
            if (gradDeviation >= deltaThreshold) {
                update.rejectReason[i] = PRICE_CHANGE_DEVIATION_ERROR;
            }
            if (priceDeviation < threshold && gradDeviation < deltaThreshold) {
                numReliablePrices++;
                sum += prices[i];
github mozilla-frontend-infra / firefox-health-dashboard / src / perf.js View on Github external
series.forEach((serie) => {
        serie.value = median(serie.runs.map(entry => entry.value));
        serie.time = median(serie.runs.map(entry => entry.time));
      });
      const runs = series.reduce((all, entry) => {
github poanetwork / token-bridge / scripts / compute-stats.js View on Github external
function computeSignatureRequestStats(signatureRequests, senderHome) {
  const processingLogs = signatureRequests.filter(x => x.eventTransactionHash)
  const txSentMap = senderHome
    .filter(x => x.eventTransactionHash)
    .reduce((acc, x) => {
      acc[x.eventTransactionHash] = x
      return acc
    }, {})

  const times = processingLogs.map(x => txSentMap[x.eventTransactionHash].time - x.time)

  return {
    count: times.length,
    mean: mean(times),
    median: median(times),
    min: min(times),
    max: max(times)
  }
}
github mozilla-frontend-infra / firefox-health-dashboard / src / perf.js View on Github external
series.forEach((serie) => {
        serie.value = median(serie.runs.map(entry => entry.value));
        serie.time = median(serie.runs.map(entry => entry.time));
      });
      const runs = series.reduce((all, entry) => {
github poanetwork / token-bridge / scripts / compute-stats.js View on Github external
function computeCollectedSignaturesStats(collectedSignatures, senderForeign) {
  const processingLogs = collectedSignatures.filter(x => x.eventTransactionHash)
  const txSentMap = senderForeign
    .filter(x => x.eventTransactionHash)
    .reduce((acc, x) => {
      acc[x.eventTransactionHash] = x
      return acc
    }, {})

  const times = processingLogs.map(x => txSentMap[x.eventTransactionHash].time - x.time)

  return {
    count: times.length,
    mean: mean(times),
    median: median(times),
    min: min(times),
    max: max(times)
  }
}