{"id":291,"date":"2022-12-02T21:35:26","date_gmt":"2022-12-02T21:35:26","guid":{"rendered":"https:\/\/jassweb.com\/new22\/solved-how-to-calculate-a-decaying-average-closed\/"},"modified":"2022-12-02T21:35:26","modified_gmt":"2022-12-02T21:35:26","slug":"solved-how-to-calculate-a-decaying-average-closed-2","status":"publish","type":"post","link":"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/","title":{"rendered":"[Solved] How to calculate a decaying average? [closed]"},"content":{"rendered":"<h2> Introduction <\/h2>\n<p>[ad_1]<\/p>\n<p>A decaying average is a type of moving average that gives more weight to recent data points and less weight to older data points. This type of average is useful for tracking trends in data that changes over time. In this article, we will discuss how to calculate a decaying average and provide an example of how to use it.<\/p>\n<h2> Solution<\/h2>\n<p><\/p>\n<p>A decaying average can be calculated using the following formula:<\/p>\n<p>New Average = (Previous Average * (n-1) + New Value) \/ n<\/p>\n<p>Where n is the number of values in the average.<\/p>\n<p>For example, if you have an average of 10 and you want to add a new value of 15, the new average would be calculated as follows:<\/p>\n<p>New Average = (10 * (2-1) + 15) \/ 2<br \/>\nNew Average = (10 + 15) \/ 2<br \/>\nNew Average = 25 \/ 2<br \/>\nNew Average = 12.5 <\/p>\n<p><\/p>\n<div class=\"entry-content\" itemprop=\"text\">\n<script async src=\"https:\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js?client=ca-pub-1088640234840270\" crossorigin=\"anonymous\"><\/script><br \/>\n<script><\/p>\n<p><\/script><\/p>\n<p><\/p>\n<div id=\"answer-29151416\" class=\"answer js-answer accepted-answer js-accepted-answer\" data-answerid=\"29151416\" data-parentid=\"29149060\" data-score=\"0\" data-position-on-page=\"2\" data-highest-scored=\"0\" data-question-has-accepted-highest-score=\"0\" itemprop=\"suggestedAnswer\" itemscope itemtype=\"https:\/\/schema.org\/Answer\">\n<div class=\"post-layout\">\n<div class=\"votecell post-layout--left\"><\/div>\n<div class=\"answercell post-layout--right\">\n<div class=\"s-prose js-post-body\" itemprop=\"text\">\n<p>Here\u2019s a simplistic implementation of what you asking.<\/p>\n<pre><code>#include &lt;stddef.h&gt;\n#include &lt;stdlib.h&gt;\n#include &lt;stdio.h&gt;\n\nint normalize_weights(double *weights, size_t num_weights)\n{\n  double sum = 0;\n\n  for (size_t i = 0; i &lt; num_weights; ++i)\n  {\n    if (weights[i] &lt; 0)\n      return -1;\n\n    sum += weights[i];\n  }\n\n  if (sum == 0)\n    return -1;\n\n  for (size_t i = 0; i &lt; num_weights; ++i)\n    weights[i] \/= sum;\n\n  return 0;\n}\n\nint weighted_avg(double *avg_ptr, const double *samples, size_t num_samples, const double *weights, size_t num_weights)\n{\n  if (num_samples != num_weights)\n    return -1;\n\n  double avg = 0;\n\n  for (size_t i = 0; i &lt; num_weights; ++i)\n    avg += samples[i] * weights[i];\n\n  *avg_ptr = avg;\n\n  return 0;\n}\n\nint main(int argc, char **argv)\n{\n  double weights[] = { 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 }; \n  double samples[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };\n  double avg;\n\n  if (normalize_weights(weights, sizeof(weights) \/ sizeof(weights[0])))\n    abort();\n\n  for (size_t i = 0; i &lt; sizeof(weights) \/ sizeof(weights[0]); ++i)\n    printf(\"Normalized weight[%u] = %lf\\n\", (unsigned) i, weights[i]);\n\n  if (weighted_avg(&amp;avg, samples, sizeof(samples) \/ sizeof(samples[0]), weights, sizeof(weights) \/ sizeof(weights[0])))\n    abort();\n\n  printf(\"\\nWeighted average is %lf\\n\", avg);\n\n  return 0;\n}\n<\/code><\/pre>\n<\/div>\n<div class=\"mt24\"><\/div>\n<\/div>\n<p> <span class=\"d-none\" itemprop=\"commentCount\"><\/span> <\/p>\n<\/div>\n<\/div>\n<p>solved How to calculate a decaying average? [closed] <\/p>\n<p><script async src=\"https:\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js?client=ca-pub-1088640234840270\" crossorigin=\"anonymous\"><\/script><br \/>\n<script><\/p>\n<p><\/script><\/div>\n<p>[ad_2]<\/p>\n<h1>Solved: How to Calculate a Decaying Average<\/h1>\n<p>Calculating a decaying average is a useful tool for tracking changes in data over time. It is especially useful when the data is volatile and changes rapidly. A decaying average is calculated by taking the average of the most recent data points and giving them more weight than older data points. This allows the average to more accurately reflect the current state of the data.<\/p>\n<h2>Steps to Calculate a Decaying Average<\/h2>\n<ol>\n<li>Gather the data points you want to use to calculate the average.<\/li>\n<li>Calculate the average of the data points.<\/li>\n<li>Assign a weight to each data point. The most recent data points should have a higher weight than older data points.<\/li>\n<li>Multiply each data point by its weight.<\/li>\n<li>Add up the weighted data points.<\/li>\n<li>Divide the sum of the weighted data points by the sum of the weights.<\/li>\n<li>The result is the decaying average.<\/li>\n<\/ol>\n<h2>Example<\/h2>\n<p>Let&#8217;s say you want to calculate the decaying average of the last five days of stock prices for a company. The data points are as follows:<\/p>\n<ul>\n<li>Day 1: $10<\/li>\n<li>Day 2: $12<\/li>\n<li>Day 3: $14<\/li>\n<li>Day 4: $16<\/li>\n<li>Day 5: $18<\/li>\n<\/ul>\n<p>The average of the data points is $14. To calculate the decaying average, we assign a weight to each data point. We&#8217;ll assign a weight of 5 to the most recent data point (Day 5) and a weight of 1 to the oldest data point (Day 1). The weights for the other data points can be calculated using a linear scale.<\/p>\n<ul>\n<li>Day 1: $10 x 1 = $10<\/li>\n<li>Day 2: $12 x 2 = $24<\/li>\n<li>Day 3: $14 x 3 = $42<\/li>\n<li>Day 4: $16 x 4 = $64<\/li>\n<li>Day 5: $18 x 5 = $90<\/li>\n<\/ul>\n<p>The sum of the weighted data points is $220. The sum of the weights is 15. The decaying average is calculated by dividing the sum of the weighted data points by the sum of the weights:<\/p>\n<p>$220 \/ 15 = $14.67<\/p>\n<p>The decaying average of the last five days of stock prices is $14.67.<\/p>\n<h2>Conclusion<\/h2>\n<p>Calculating a decaying average is a useful tool for tracking changes in data over time. It is especially useful when the data is volatile and changes rapidly. By assigning a weight to each data point, the most recent data points are given more weight than older data points, allowing the average to more accurately reflect the current state of the data.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction [ad_1] A decaying average is a type of moving average that gives more weight to recent data points and less weight to older data points. This type of average is useful for tracking trends in data that changes over time. In this article, we will discuss how to calculate a decaying average and provide &#8230; <a title=\"[Solved] How to calculate a decaying average? [closed]\" class=\"read-more\" href=\"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/\" aria-label=\"More on [Solved] How to calculate a decaying average? [closed]\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[320],"tags":[618,324,1093,5183],"class_list":["post-291","post","type-post","status-publish","format-standard","hentry","category-solved","tag-average","tag-c","tag-c99","tag-weighted-average"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>[Solved] How to calculate a decaying average? [closed] - JassWeb<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"[Solved] How to calculate a decaying average? [closed] - JassWeb\" \/>\n<meta property=\"og:description\" content=\"Introduction [ad_1] A decaying average is a type of moving average that gives more weight to recent data points and less weight to older data points. This type of average is useful for tracking trends in data that changes over time. In this article, we will discuss how to calculate a decaying average and provide ... Read more\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/\" \/>\n<meta property=\"og:site_name\" content=\"JassWeb\" \/>\n<meta property=\"article:published_time\" content=\"2022-12-02T21:35:26+00:00\" \/>\n<meta name=\"author\" content=\"Kirat\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kirat\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/\"},\"author\":{\"name\":\"Kirat\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\"},\"headline\":\"[Solved] How to calculate a decaying average? [closed]\",\"datePublished\":\"2022-12-02T21:35:26+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/\"},\"wordCount\":510,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"keywords\":[\"average\",\"c++\",\"c99\",\"weighted-average\"],\"articleSection\":[\"Solved\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/\",\"url\":\"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/\",\"name\":\"[Solved] How to calculate a decaying average? [closed] - JassWeb\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#website\"},\"datePublished\":\"2022-12-02T21:35:26+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/jassweb.com\/solved\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"[Solved] How to calculate a decaying average? [closed]\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/jassweb.com\/solved\/#website\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"name\":\"JassWeb\",\"description\":\"Build High-quality Websites\",\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/jassweb.com\/solved\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\",\"name\":\"Jass Web\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"contentUrl\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"width\":693,\"height\":132,\"caption\":\"Jass Web\"},\"image\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\",\"name\":\"Kirat\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586\",\"contentUrl\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586\",\"caption\":\"Kirat\"},\"sameAs\":[\"http:\/\/jassweb.com\"],\"url\":\"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"[Solved] How to calculate a decaying average? [closed] - JassWeb","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/","og_locale":"en_US","og_type":"article","og_title":"[Solved] How to calculate a decaying average? [closed] - JassWeb","og_description":"Introduction [ad_1] A decaying average is a type of moving average that gives more weight to recent data points and less weight to older data points. This type of average is useful for tracking trends in data that changes over time. In this article, we will discuss how to calculate a decaying average and provide ... Read more","og_url":"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/","og_site_name":"JassWeb","article_published_time":"2022-12-02T21:35:26+00:00","author":"Kirat","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Kirat","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/#article","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/"},"author":{"name":"Kirat","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31"},"headline":"[Solved] How to calculate a decaying average? [closed]","datePublished":"2022-12-02T21:35:26+00:00","mainEntityOfPage":{"@id":"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/"},"wordCount":510,"commentCount":0,"publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"keywords":["average","c++","c99","weighted-average"],"articleSection":["Solved"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/","url":"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/","name":"[Solved] How to calculate a decaying average? [closed] - JassWeb","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/#website"},"datePublished":"2022-12-02T21:35:26+00:00","breadcrumb":{"@id":"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/jassweb.com\/solved\/solved-how-to-calculate-a-decaying-average-closed-2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/jassweb.com\/solved\/"},{"@type":"ListItem","position":2,"name":"[Solved] How to calculate a decaying average? [closed]"}]},{"@type":"WebSite","@id":"https:\/\/jassweb.com\/solved\/#website","url":"https:\/\/jassweb.com\/solved\/","name":"JassWeb","description":"Build High-quality Websites","publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jassweb.com\/solved\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/jassweb.com\/solved\/#organization","name":"Jass Web","url":"https:\/\/jassweb.com\/solved\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/","url":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","contentUrl":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","width":693,"height":132,"caption":"Jass Web"},"image":{"@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31","name":"Kirat","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/","url":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586","contentUrl":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586","caption":"Kirat"},"sameAs":["http:\/\/jassweb.com"],"url":"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/"}]}},"_links":{"self":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/291","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/comments?post=291"}],"version-history":[{"count":0,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/291\/revisions"}],"wp:attachment":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/media?parent=291"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/categories?post=291"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/tags?post=291"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}