Scaling a Data Set

Tarver

Board Regular
Joined
Nov 15, 2012
Messages
112
Office Version
  1. 365
Platform
  1. Windows
  2. MacOS
I have an interesting math exercise I'm trying to do in Excel that I need some help with.

I have a datasets for a group of product's lifecycle. I've normalized that data set and calculated the balance of sale for each period, as below:

Month123456789101112
Amount Sold5060100120150145118122105806540
% to Total4.3%5.2%8.7%10.4%13.0%12.6%10.2%10.6%9.1%6.9%5.6%3.5%
Normalized9%18%55%73%100%95%71%75%59%36%23%0%


Here's how that curve looks in a chart:
1724692632582.png


Now however the challenge is to determine what percentage of the product would sell each month if the lifecycle was stretched to 14 months, 18 months, or further, were the product to have a longer run. I need to:
* Stretch or compress the scale as appropriate. (So, for instance, if we scale to 14 months, I'll need to add two months, inserted between 4 & 5 and 8 & 9.)
* Interpolate the data points that will be added.

Here's what that should look like. The new data points and their interpolated values (just a linear average of the adjacent values) are highlighted in green.
1724693752276.png


I'm struggling with finding a good way to have Excel look at the new data points on the scale (let's call them 4.5 and 8.5) and determine that it needs to do the calculation to interpolate that datapoint, and if it's not a new data point, to get the relevant data from the original table. This gets confusing because the new points (4.5 and 8.5) are not really named that way; they're numeric, in sequence. So 4.5 is really 5, old 5 is really 6, old 6 is really 7, old 7 is really 8, the new 8.5 is really 9, and that means old 8 is now 10, etc. It's confusing, and I just can't figure out how to build that formula for Excel.

I'd apprecite any suggestions on how to approach this.

Thanks!
 
Last edited:

Excel Facts

Copy a format multiple times
Select a formatted range. Double-click the Format Painter (left side of Home tab). You can paste formatting multiple times. Esc to stop
I dont think with such interpolation you get a "true" view.

How about plotting your value against not month number but against the normalized period.
and use not line plot but scatter (xy) plot (can be plotted with lines, without points).
 

Attachments

  • Zrzut ekranu 2024-08-27 134412.png
    Zrzut ekranu 2024-08-27 134412.png
    60.2 KB · Views: 4
Upvote 0
Dont know if this is what you need but here it is:

so in cell B6 you enter the new number of month, and the sold amount is calculated for each of the new month, so that the total of the new # of month is equal to the original 12 month.
Would that work?

Book1.xlsx
ABCDEFGHIJKLMNO
1Month123456789101112
2Amount Sold5060100120150145118122105806540
3% to Total4.30%5.20%8.70%10.40%13.00%12.60%10.20%10.60%9.10%6.90%5.60%3.50%
4Normalized#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!
5
6New # of month14
7Month1234567891011121314
842.857145074.2857194.28571111.4286127.8571124.2857101.142910494.8571479.2857164.2857152.1428634.28571
Sheet3
Cell Formulas
RangeFormula
B4:M4B4=(B2-$A$31)/($A$32-$A$31)
B7:O7B7=SEQUENCE(, B6)
B8:O8B8=LET(ao, B2:M2, no, COUNT(ao), nn, B6, so, INT(SEQUENCE(no*nn, ,0)/nn)+1, v, INDEX(ao, 1, so), sn, INT(SEQUENCE(no*nn,,0)/no)+1, res, BYROW(SEQUENCE(nn), LAMBDA(x, SUM(FILTER(v, sn=x))))/nn, TRANSPOSE(res) )
Dynamic array formulas.


1724783675050.png
 
Upvote 0
Here is another modification so that the total sold in the first 12 month is the same (row 10):

Book1.xlsx
ABCDEFGHIJKLMNOP
1Month123456789101112
2Amount Sold5060100120150145118122105806540
3% to Total4.30%5.20%8.70%10.40%13.00%12.60%10.20%10.60%9.10%6.90%5.60%3.50%
4Normalized#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!
5
6New # of month14
7Month1234567891011121314
842.857145074.2857194.28571111.4286127.8571124.2857101.142910494.8571479.2857164.2857152.1428634.28571
91.080882
1046.3235354.0441280.29412101.9118120.4412138.1985134.3382109.3235112.4118102.529485.6985369.4852956.3602937.05882
11
Sheet3
Cell Formulas
RangeFormula
B4:M4B4=(B2-$A$31)/($A$32-$A$31)
B7:O7B7=SEQUENCE(, B6)
B8:O8B8=LET(ao, B2:M2, no, COUNT(ao), nn, B6, so, INT(SEQUENCE(no*nn, ,0)/nn)+1, v, INDEX(ao, 1, so), sn, INT(SEQUENCE(no*nn,,0)/no)+1, res, BYROW(SEQUENCE(nn), LAMBDA(x, SUM(FILTER(v, sn=x))))/nn, TRANSPOSE(res) )
B9B9=SUM(B2:M2)/SUM(B8:M8)
B10:O10B10=B8#*B9
Dynamic array formulas.


1724783838999.png
 
Upvote 0
Solution
I dont think with such interpolation you get a "true" view.

How about plotting your value against not month number but against the normalized period.
and use not line plot but scatter (xy) plot (can be plotted with lines, without points).
Interesting response. I didn't fully understand the solution at first and worked through it a bit. You're correct that there's not a true view the way I proposed, and normalizing the period seems to help me get closer to the answer. Thank you!
 
Upvote 0
Dont know if this is what you need but here it is:

so in cell B6 you enter the new number of month, and the sold amount is calculated for each of the new month, so that the total of the new # of month is equal to the original 12 month.
Would that work?

Book1.xlsx
ABCDEFGHIJKLMNO
1Month123456789101112
2Amount Sold5060100120150145118122105806540
3% to Total4.30%5.20%8.70%10.40%13.00%12.60%10.20%10.60%9.10%6.90%5.60%3.50%
4Normalized#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!
5
6New # of month14
7Month1234567891011121314
842.857145074.2857194.28571111.4286127.8571124.2857101.142910494.8571479.2857164.2857152.1428634.28571
Sheet3
Cell Formulas
RangeFormula
B4:M4B4=(B2-$A$31)/($A$32-$A$31)
B7:O7B7=SEQUENCE(, B6)
B8:O8B8=LET(ao, B2:M2, no, COUNT(ao), nn, B6, so, INT(SEQUENCE(no*nn, ,0)/nn)+1, v, INDEX(ao, 1, so), sn, INT(SEQUENCE(no*nn,,0)/no)+1, res, BYROW(SEQUENCE(nn), LAMBDA(x, SUM(FILTER(v, sn=x))))/nn, TRANSPOSE(res) )
Dynamic array formulas.


View attachment 116032
This is exactly what I'm after, yes! Thank you very much for this!
 
Upvote 0

Forum statistics

Threads
1,221,310
Messages
6,159,176
Members
451,543
Latest member
cesymcox

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top