0 ratings0% found this document useful (0 votes) 412 views12 pagesS Curve
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content,
claim it here.
Available Formats
Download as PDF or read online on Scribd
92020 ea - Front Loaded and Back Loaded | Normal Distribution Colurnn Chart and § Curves in Excel - Stack Overiow
Front Loaded and Back Loaded | Normal Distribution Column Chart
and S Curves in Excel
Asked 1 year, 6 months ago Active 1 month ago Viewed 2k times
Most of us may be aware of normal distribution curves however those who are new to front-
loaded and back-loaded normal distribution, | would like to provide the background and then
42 would proceed on stating my problem
°Y Front-Loaded Distribution: As demonstrated below, it have a rapid start. For eg. ina project
fi] when more resources assumed to be consumed early in the project, cost/hours is distributed
4 aggressively at the start of project.
a *
a
a
2%
2%
™
2%
1%
™
om
Back-Loaded Distribution: Contrary to Front-Loaded distribution, it start out with a lower slope
and increasingly steep towards the end of the project. For e.g. when most resources assumed to
be consumed late in the project.
a
a
*
*
»
2%
%
%
o%
By using our site, you acknowledge that you have read and understand our Cookie Policy, Privacy Policy, and
our Terms of Service.
x
hitpsstackovortow.com/questions/5307476rontJoaded-ané-back-loaded-normal-distibullon-column-chart-and-s-cuvesin nesr9n020 ‘oa Front Loaded and Back Loaded | Normal Distrbuton Colin Chart and $ Curves in Exeel- Stack Overflow
resources (Cost/Hours) in that period
For reference, | am providing the Bell Curve / standard normal distribution (when Mean=Median)
chart (below) and the associated formula to begin with.
%
an
*
”
»
m%
»
*
om
Problem Statement: | was able to generate the normal distribution curve (See below with
formulae) however | am unable to find a solution for Front loaded or Back Loaded curves.
How to bring the skewness to the right (front-loaded / positively skewed distribution which means
mean is greater than median) and left skewed (back-loaded / negatively skewed distribution
which means mean is less than median) in a normal distribution?
By using our site, you acknowledge that you have read and understand our Cookie Policy, Privacy Policy, and
x
our Terms of Service.
hitpsstackovorow.com/questions/5307476irontJoaded-ané-back-loaded-normal-distibullon-column-chart-and-s-curvesin ana511972020,
va - Front Loaded and Back Loaded | Normal Distribution Column Chart and $ Curves in Excel - Stack Overiow
: 0
1
:
a
:
:
;
Bee
o| 1 a [eas 63235 248s
m2 a =
ae a) = ee =
a ea cok ae me
13, 5 0 226358 157735 120985
ae a) ae as
a
ne es is iH
Cell B8 denotes arbitrarily chosen standard deviation. It affects the kurtosis of normal distribution
In the above screenshot, | am choosing the range of the normal distribution to be from -3SD to
38D.
2 " al han ns. -
Formula Explaned:
Cell B9 to B18 denotes the even distribution of Z-Score using the formula:
B8-((2"$8$8)/Period)
Cell C9 to C18 denotes the normal distribution on the basis of Z Score and the Amount using the
formula:
=(NORMSDIST (B9) -NORMSDIST(BB)) *Anount /(1-2*NORMSDIST ($888) )
Update: Following one of the link in comment, I closest got to the below situation. The issue is
highlighted in Yellow pattern as due to the usage of volatile Rand() function the charts are not
smooth as they should be. As my given formula above do not create ZigZag pattern, | am sure we
x
hitpsstackovorow.com/questions/5307476rontJoaded-ané-back-loaded-normal-distibullon-column-chart-and-s-curvesin ana511972020,
va - Front Loaded and Back Loaded | Normal Distribution Colurnn Chart and § Curves in Excel - Stack Overiow
can have skewed normal distribution and smooth too !
svn] saa =10 | stoout| sis072206 | stow |__|
ZZ : oo (etece
| seect 100 = ins 20 | "mS" o.sszi0so303e0q Back Loaded
ES | lh.
2 oteaaeams cranes baum] come of ima (alli...
Note:
1. | am using Excel 2016, so | welcome if any newly introduced formula can solve my problem.
Also, | am not hesitant to use UDFs.
2. The numbers of front-load and back-load distribution are notional. They could vary. | am only
interested in shape of resulting chart.
Kindly help !
‘excel vba exeelformulanormal-dstribution
edited Apr 9 at 725 asked Oct 31 18 at 0:50
omar jainashish
W3k 9 27 58 1705 3 27 34
1. you might want to chock JackBeean's response on mrexcel,com/forum/excel-questions!... «it doesn't quite
match your desired shapes but you can easily get a front loaded and back loaded distribution by editing the
STDIN, AVGIN, START and END fields (in your example you'd want 10 bins) — Jon Oct 31 "18 at 6:17
4 Really good presentation of your question!!! :) - Wizhi Oct 31'18 at 16:43 ”
1 @Jon - The difference between Jackbean's response and desired solution is that there are numerous ways
to generate random numbers but those random numbers sums to desired value is what | am after. So Input
should be 3 variables: (Bins, Total Cost, Front/Back) and Total Cost needs to be distributed in Bins in Front
‘or Back manner. Jackbean's response has no control over the Total Sum, ~ jainashish Oct 3118 at 21:52
4 @jainashish You enter the total count in cell B3 ({he "Select" variable). Then the count column will give you
‘a distribution totalling that value. I's perhaps not very clear that this is what will happen though as the
x
hitpsstackovorow.com/questions/5307476rontJoaded-ané-back-loaded-normal-distibullon-column-chart-and-s-curvesin ana511972020,
5 Answers
ea - Front Loaded and Back Loaded | Normal Distribution Colurnn Chart and § Curves in Excel - Stack Overiow
‘culprit is usage of RAND() in Column F. Any workaround for it? — jainashish Nov 1'18 at 5:16
Active
Oldest | Votes
You can generate the curve using below methods and can use the numbers generated by them
for your requirement.
curve _|Cumulative| leverage 5.83
0.09] 0.00] |standardbevistion| 3.20]
2.45; 2.45| [bins 20.00]
473 7.18| [multiplier 10.09]
6.70 13.88]
8.24] 2.1]
9.30] 31.49|
9.87 41.20]
9:35] 51.29]
972] 61.01]
9.15| 70.16
8.36 78.59]
7.43 $5.55
ead 92.35]
548 97.81
4a3|__102.24|
347 105.71|
255] 108.26|
1.68| 109.94]
0.83] 110.77
‘o.00[ 130.77
[aera awa uc Eran bematon
64°56 + SINIB3/2, fs
IANS) SSeS NBA inutipier ho
The curve
hitpsstackovorow.com/questions/5307476rontJoaded-ané-back loaded-normal-distibullon-column-chart-and-s-curvesin
en2511972020, vea- Front Loaded and Back Loaded | Normal Distribution Colurnn Chart and § Curves in Excel - Stack Overiow
3200 32000
1090 300.00
800 8000
600
400 2000
si | Wo”
000 Ii 2.00
1294 5 6 7 8 9 191122 1928 15 16 17 18 19 20
Notes:
1. If you want to change the bins you have to drag the cells down or up in order to complete the
series
2. If you want to change the total cost, you can change the multiplier
3. If you want to change the tilting of the curve you can change the divider in column C which is
currently set to 2, if is -2 the tilt will change direction, you can experiment with different
numbers, the direction depends upon either itis less than zero or greater than zero
For copy past
-a20180/ (3683-1)
DTANS (82)
=$654"SIN(B2 + SIN(2)/2)
answered Nov 2"18 at 11:47
i vsmanhag
12281 3 9
| used the actual mathematical formulas to arrive at the result. It looks like to me what you wanted
to achieve, The orange cells in 'Skewed' section are the ones which can be changed to vary the
2. degree and direction of skew. Some pictures for demonstration are below, followed by the
formulas used,
kie Policy, Privacy Policy,
By using our site, you ackno\
ledge that you have read and understand our Ci
our Terms of Servic:
htpsstackovortow.com/questions/5307476rontJoaded-ané-back-loaded-normal-distibullon-column-chart-and-s-cuvesin ena511972020,
0.4500
0.4000
03500
03000
02500
‘0.2000
0.1500
0.1000
‘0.0500
0.0000
By using our sit
our Terms of S
ea - Front Loaded and Back Loaded | Normal Distribution Column Chart and § Curves in Excel - Stack Overiow
2.49)
20]
1.89]
1.59]
1.29]
o.s9|
0.60}
30]
o.09|
0.30]
-0.69|
a.so|
1.29]
1.59]
1.89]
2.10]
2.49]
-2.70|
3.09]
3.30]
3.69]
-3.29|
1 ack
B | c > E F 6 H 1
‘Normal Distribution skewed
oa o2
[zvane Yoalue [cumulathe “Amount [XStewed _YSkewed Cumulative Amount
300008 0.999 ——«aaa.Ta] «3.00 -—=—.co2 0.9998
27 0.0104 0.997 1022.00] 3.78 o.coat ~—c.sca sa.
24 00x24 —a.992 2294s] 3.28 conn a.905 9.2
21 0.060 0.982 z0aae] 2.92 .c0a0 0.989 296.69
18 0079 0.964 7805.02] 2.52 0.0099 «0.977 988.38
45 0.4295 0.933 1205176 2.080296. a.9s5 2057.04
1201092 oes s9sg61| 1.03 o.a7se—.919 7538.27]
09 02661 081s 2660852] 117 «0.1559 ase 15592244]
06 03332 0.726 -33322.46 074 0.256988 2569351
02 o3si4 asia aeiaa7e| 0.35 osan gon aeaea.ad
00 03989 0800 39904,23] 000 0.3910 0579 _39108.27
0a oae14 0382 3812878] 020 0.3970 0.460 3969525
“05 03332 0.274 3337246] © -056. 03736 0.385 37357.
09 02601 aes 2600852] -0.g0 oan 0.242 22012.10
12 04982 0.115 9sig6x| 1.01 o.28e3 0.159 28834.59
“150.1295 0.067 12951,76 —-1.20 0.2828 ~—0.097 2425.23
“18 0.0700 0.036 780502] 1.38 o.s99s 0.055 1990.27
21 009 a.ora 2036] 15s osexs 0.029 s0138.23
24 00224 0.008 223945] 1.71 o.azas 0.014 _12850.28
27° 0.9104 0.003 1022.09) -1.86 0.1008 0.005 1007831]
30 0.0014 0.001 aaa.ta] 2.01 o.a77a ——.n03,— 7782.03
23, 00017 0.000 17220 2.18 ogser __—_a.901__sna.74
26 0.0006 0.000 eri} 2.30 ous 0.000 0.23
-39 0.0002 0.000 w9a7| 2.40 0.0322 0.000 3217.59
Distribution
a i, ln
1.23.45 6 7 8 9 101112131415161718 19 20212223 28
Normal skewed
ledge that you have read and understand our Cookie Policy, Privacy Policy and
htpsstackovorow.com/questions/5307476rontJoaded-ané-back-loaded-normal-distibullon-column-chart-and-s-curvesin
m2s92020 ‘oa - Front Loaded and Back Loaded | Norma Dstrbution Column Chart and § Cures in Exc - Stack Overtow
Cumulative
1.200
1.000
0.800
0.800
0.400
0.200
0.000
1234567 8 9 101112131415161718192021222324
Normal skewed
Formulas in row 5, column
B: -(a5*$n$2)+0 (0 is the mean, you can change as you like)
Cz =(a/($as2* soRT(24PE())))EXP(-(85*2)/2)
D: «0.5* (1+8RF (B5/S9RT(2)))
E: ssasires
AS*$AS2* (1+FS2*SIN((F4*PL())/(2*$F$4))))+@ (0 is the mean, you can change as you like)
G: =(2/¢$882" SgRT(2*PT()))) *EXPC- ((F5+86$2)"2)/2)
5° (LERF ((85+8682)//SQRT(2)))
I: =sasiees,
answered Nov 2°18 at 21:17
ie shash
26017
If you want to make sure the bins always have a value in them, you can use the following
approach, which uses normal distributions and simply changes the mean and the standard
2. deviation to get a curve that you want.
Changing the mean moves the peak to the left or right. Changing the standard deviation makes
the quantities more uniform or more variable. I've used 0-1000 as my default range in the
example below, but it should be easy to modify the formula to bring any value you want. NOTE in
order to fulfill your requirement that all bins must be non-zero, you need to manually adjust the
By using our site, you acknowledge that you have read and understand our Cookie Policy, Privacy Policy, and
x
hitpsstackovorow.com/questions/5307476irontJoaded-ané-back-loaded-normal-distibullon-column-chart-and-s-curvesin ana511972020, va - Front Loaded and Back Loaded | Normal Distribution Column Chart and § Curves in Excel - Stack Overiow
Yellow cells are for data entry, green cells are a count (so if you add bins, they would need to be
numbered according to the sequence)
1 T
6 2 0080
9| 30096785728 101399 0
nf} 5 0.ssazi72 162821 0000
: jae Sy | hh
Be inna s = God
= aaa
a 4 =
2 ‘ aes oem ae
31 6 oxeoisr72 160368 noe
| qf sseeeel a | oe
4 tase ee]
Formula in cell B7 (copied down to cell B16): =Noxmorst(sa7*1000/Hax( $AS6: $4817), $853, $884, TRUE)-
NORMDIST($A6*1000/MAX(SA$6:$A$17),$8$3,$8$4, TRUE)
Formula in cell C7 (copied down to cell C16):
'SUM(C$6:C6) , ROUND (87/SUM($B$7:$8817)*$CS5,0))
TF (AT=MAX ($A$6:$4817) ,$C$5-
‘Adding new bins is simple enough and is still based on a 0-100 range, so you don't need to
change any numbers other than adding rows and copying down the formulae:
/e read and understand our Cookie Policy, Privacy Policy, and
By using our site, you acknow
xdge that you
our Terms o
htpsstackovorow.com/questions/5307476rontJoaded-ané-back-loaded-normal-distibullon-column-chart-and-s-cuvesin ona511972020,
ea - Front Loaded and Back Loaded | Normal Distribution Colurnn Chart and § Curves in Excel - Stack Overiow
we ° c ae
i
2 Stewed 20ins
Sinem skewed, 20ins
2 stander devon a
cout
: ; _
a) 2 comms isn
> a ee
° 4 oonssests ist
i S omsmesi2 yaw som
= @ Coneaescee ane
5 7 oosi01s7 168
1 # ooisssssra 73962 alll
Ei 3 oncssres set Sask 2 ih 1? wim Bi eorag aon
= 42 cosszoss 8
2 1 cosasras 79
2 HA consi 307
= te comzsyan 00853
5 17 conscsm8 oes
» 1 tomens sons
= 3 coms as07
2 wseewonsitoveate
2
The above example is also showing how a narrow standard deviation and a high mean combine
to make the starting bins have very little quantity. But there is still a value (as long as count is big
enough).
You may want to pre-define the different skewness selections if this is going to be used by other
people (make column 8 dependent on a lookup, for example) but hopefully this is extensil
enough for your needs.
answered Nov 4"18 at 23:32
Jon
2a 2 11
Ifyou are open to a Python answer the I can give you the code to get Python Pandas libary to
generate the random observations from a skewed Normal and then bin (bucket) them for you
The following in a Python script which captures the use case but also can be created using COM
and so creatable from VBA.
Amport numpy as np
import pandas as pd
from scipy-stats import skewnorm
class PythonSkewecNormal (object):
“Peg clsid_ = "{1583261D-27EA-aR01-ACFB-4905810F6898)"
htpsstackovorow.com/questions/5307476rontJoaded-ané-back loaded-normal-distibullon-column-chart-and-s-curvesin sone511972020,
ea - Front Loaded and Back Loaded | Normal Distribution Column Chart and $ Curves in
4 https: //docs. scipy-org/doc/numpy-
41.15. 41/reFerence/generated/numpy.random. seed. tal.
np-random. seed(18);
shttps://docs.scipy.org/doc/scipy-
0.19.1/reference/generated/scipy.stats. skewnorn.html
return skewnorn.rvs(a, sizessz).tolist();
def BinnedskewedNormal(self,a, sz, bins)
4 https: //docs..scipy.org/doc/numpy-
1.15.1/reference/generated/numpy.randon. seed. html
np-random. seed(18);
sthttps://docs..scipy.org/éoc/scipy-
0.19.1/reference/generated/scipy. stats. skewnorn.html
Pop = skennorm.rvs(a, size-sz); #.tolist();
bins2 = np.array(bins)
bins3 = pd. cut(pop, bins2)
table = pd.value_counts(bins3, sort-False)
table. index
table. index.astype(str)
return table.reset_index().values.tolist();
if _nane_=='_main_':
print ("Registering COM server...)
import win32con. server register
win32con. server register UseConmandLine(PythonSkewedNormal )
And the VBA client code
option Explicit
Sub TestPythonSkewedNormal ()
Dim skewedNormal As object
Set skewedNormal « Createdoject("SciPyInVBA.PythonSkewecNormal”")
Din Isize As Long
Asize = 190
Dim shtoata As Excel.Worksheet
Set shtOata = ThisWorkbook.Worksheets..Tten("Sheet3")
circumstances
shtbata.Cells.Clear
change sheet to your
Dim veins
vBins = Array(-5, -4, ~3, -2, -1, ® 2, 2, 3, 4 5)
‘stop
Din vainneddata
vAinneddata = skewedNormal.BinnedSkewedNormal(-5, 1Size, vBins)
Dim rngbata As Excel.Range
Set rngbata = shtOata.Cells(2, 1).Resize(UBound(vBins) - LBound(vBins), 2)
rngbata.Value2 = vBinnedbata
‘stop
End Sub
hitpsstackovorow.com/questions/5307476irontJoaded-ané-back-loaded-normal-distibullon-column-chart-and-s-curvesin
se511972020, va - Front Loaded and Back Loaded | Normal Distribution Column Chart and § Curves in Excel - Stack Overiow
(3, -4]
(4, -3]
C3, -2]
(2, -1] 3
(a, @} 5:
@ 4)
(2)
3)
G, 4)
@ 5]
Original code deposited on my blog
edited Nov 318 at 23:48 answered Nov 3'18 at 23:17
S$ Meaden
698 3 21 50
Based on @usmanhaq's ans, vba macro made for distribution curve simulation. Corrected for
100% scaling of front & backloading curve. click here to go Github Lib
= alles |= = === =
answered Dec 13°19 at 11:01
Amit Panasara
360 4 11
By using our site, you acknowledge that you have read and understand our Cookie Policy, Privacy Policy, and
our Terms of Service.
htpsstackovorow.com/questions/5307476rontJoaded-ané-back-loaded-normal-distibullon-column-chart-and-s-cuvesin vane