Free Statistics

of Irreproducible Research!

Author's title

Author*The author of this computation has been verified*
R Software Modulerwasp_bootstrapplot.wasp
Title produced by softwareBlocked Bootstrap Plot - Central Tendency
Date of computationMon, 03 Nov 2008 04:25:43 -0700
Cite this page as followsStatistical Computations at FreeStatistics.org, Office for Research Development and Education, URL https://freestatistics.org/blog/index.php?v=date/2008/Nov/03/t1225711601yda7ceeknntxw7y.htm/, Retrieved Sun, 19 May 2024 10:56:06 +0000
Statistical Computations at FreeStatistics.org, Office for Research Development and Education, URL https://freestatistics.org/blog/index.php?pk=20830, Retrieved Sun, 19 May 2024 10:56:06 +0000
QR Codes:

Original text written by user:
IsPrivate?No (this computation is public)
User-defined keywords
Estimated Impact185
Family? (F = Feedback message, R = changed R code, M = changed R Module, P = changed Parameters, D = changed Data)
F     [Blocked Bootstrap Plot - Central Tendency] [workshop 3] [2007-10-26 12:36:24] [e9ffc5de6f8a7be62f22b142b5b6b1a8]
F    D    [Blocked Bootstrap Plot - Central Tendency] [Workshop 4 Q4] [2008-11-03 11:25:43] [60d772482829eb846b04c71947363055] [Current]
Feedback Forum
2008-11-09 14:50:57 [2df1bcd103d52957f4a39bd4617794c8] [reply
De midrange vertoont zoals student correct aangeeft de kleinste spreiding en is de beste benadering. Hoe groter de spreiding is, hoe groter de variantie.

We noteren echter wel enkele serieuze outliers bij de midrange. Deze zijn het resultaat van rekenkundige gemiddelden.
2008-11-10 00:22:29 [Bob Leysen] [reply
Correcte grafiek.

De density plot gaat over 500 random observaties. De median heeft een klein betrouwbaarheidsinterval, maar bij de midrange is het nog kleiner.
De mediaan van de midrange blijft zeer kort bij elkaar. De midrange heeft wel serieuze outliers. De midrange vertoont de kleinste spreiding en is de beste benadering. Hoe groter de spreiding, hoe groter de variantie. Alle punten zijn rekenkundige gemiddelden, en niet van een dataset.
2008-11-10 15:54:25 [Inge Meelberghs] [reply
De student maakt een correcte berekening en kiest voor de midrange. Deze zou volgens haar de beste benadering zijn voor de geschatte waarde van de kledingproductie. Dit is correct al kunnen we dit antwoord nog wat nuanceren.

De midrange geeft de beste benadering omdat de spreiding hier het kleinst is. Een nadeel hier is dat er wel wat outliers zijn die we niet als irrelevant mogen beschouwen. Dit is dan weer niet het geval bij het gemiddelde, hier heb je geen outliers maar is de spreiding wel het grootst waardoor ook hier meer variantie is dan bij de midrange.

Er is dus eigenlijk geen 'correct' antwoord. Het is eerder een persoonlijke keuze voor wat je belangrijk vindt in je voorspellingen.
2008-11-10 16:57:48 [Olivier Uyttendaele] [reply
Goed gereproduceerd, ook correct aangepast van 100 naar 500 observaties. De punten die je zit in de grafieken zijn rekenkundige gemiddelden en geen waarnemingen van een dataset. Bij deze berekening wordt er telkens een waarde weggenomen, waarna een nieuw gemiddelde kan genomen worden, werdom wordt er weer een waarde weggenomen en een nieuw gemiddelde… De bedoeling hier is de nauwkeurigheid van het gemiddelde te berekenen. Hoe kleiner de spreiding van de gemiddelden, hoe nauwkeuriger het algemeen gemiddelde. De bootstrap simulation geeft een samenvatting van alle grafieken (scatterplots van de mean, median…) en berekende gemiddelden.
Je schreef in het document dat we best de midrange kunnen gebruiken aangezien daar de spreiding het kleinst is. En dus bijgevolg de mean en de midrange niet het beste zijn om dit model te analyseren. Dit is maar gedeeltelijk waar. Het klopt inderdaad at de midrange de kleinste spreiding vertoont, maar je ziet ook duidelijk dat er bij deze midrange er veel outliers aanwezig zijn. De op 1 na kleinste spreiding bevindt zich dan bij de mean die geen outliers vertoont. Bijgevolg dien je deze te gebruiken als beste schatter.

En algemene uitleg over de bootstrap uitgelegd met een concreet voorbeeld gaat als volgt:
“to estimate the uncertainty of the median from a dataset
with 50 elements, we generate a subsample of 50 elements and calculate
the median. This is repeated at least 500 times so that we have at least
500 values for the median. Although the number of bootstrap samples to
use is somewhat arbitrary, 500 subsamples is usually sufficient. To
calculate a 90% confidence interval for the median, the sample medians
are sorted into ascending order and the value of the 25th median
(assuming exactly 500 subsamples were taken) is the lower confidence
limit while the value of the 475th median (assuming exactly 500
subsamples were taken) is the upper confidence limit.”
Bron: 1. Exploratory Data Analysis - 1.3.3.4. Bootstrap Plot
2008-11-11 16:28:55 [Yara Van Overstraeten] [reply
De keuze van de midrange als indicator om de geschatte waarde van kledij te bepalen is inderdaad correct omdat de spreiding hier het kleinst is. Er is hier echter wel het gevaar van de outliers in de midrange, die wel degelijk hun effect hebben op de resultaten. Het is dus misschien beter om de mediaan als indicator te gebruiken omdat hier minder outliers aanwezig zijn die het resultaat kunnen beinvloeden.

Post a new message
Dataseries X:
109.20
88.60
94.30
98.30
86.40
80.60
104.10
108.20
93.40
71.90
94.10
94.90
96.40
91.10
84.40
86.40
88.00
75.10
109.70
103.00
82.10
68.00
96.40
94.30
90.00
88.00
76.10
82.50
81.40
66.50
97.20
94.10
80.70
70.50
87.80
89.50
99.60
84.20
75.10
92.00
80.80
73.10
99.80
90.00
83.10
72.40
78.80
87.30
91.00
80.10
73.60
86.40
74.50
71.20
92.40
81.50
85.30
69.90
84.20
90.70
100.30




Summary of computational transaction
Raw Inputview raw input (R code)
Raw Outputview raw output of R engine
Computing time3 seconds
R Server'Gwilym Jenkins' @ 72.249.127.135

\begin{tabular}{lllllllll}
\hline
Summary of computational transaction \tabularnewline
Raw Input & view raw input (R code)  \tabularnewline
Raw Output & view raw output of R engine  \tabularnewline
Computing time & 3 seconds \tabularnewline
R Server & 'Gwilym Jenkins' @ 72.249.127.135 \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=20830&T=0

[TABLE]
[ROW][C]Summary of computational transaction[/C][/ROW]
[ROW][C]Raw Input[/C][C]view raw input (R code) [/C][/ROW]
[ROW][C]Raw Output[/C][C]view raw output of R engine [/C][/ROW]
[ROW][C]Computing time[/C][C]3 seconds[/C][/ROW]
[ROW][C]R Server[/C][C]'Gwilym Jenkins' @ 72.249.127.135[/C][/ROW]
[/TABLE]
Source: https://freestatistics.org/blog/index.php?pk=20830&T=0

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=20830&T=0

As an alternative you can also use a QR Code:  

The GUIDs for individual cells are displayed in the table below:

Summary of computational transaction
Raw Inputview raw input (R code)
Raw Outputview raw output of R engine
Computing time3 seconds
R Server'Gwilym Jenkins' @ 72.249.127.135







Estimation Results of Blocked Bootstrap
statisticQ1EstimateQ3S.D.IQR
mean85.75860655737786.893442622950888.11270491803281.740304138632682.35409836065574
median86.487.3881.957991118068941.59999999999999
midrange88.188.188.851.130288965836870.75

\begin{tabular}{lllllllll}
\hline
Estimation Results of Blocked Bootstrap \tabularnewline
statistic & Q1 & Estimate & Q3 & S.D. & IQR \tabularnewline
mean & 85.758606557377 & 86.8934426229508 & 88.1127049180328 & 1.74030413863268 & 2.35409836065574 \tabularnewline
median & 86.4 & 87.3 & 88 & 1.95799111806894 & 1.59999999999999 \tabularnewline
midrange & 88.1 & 88.1 & 88.85 & 1.13028896583687 & 0.75 \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=20830&T=1

[TABLE]
[ROW][C]Estimation Results of Blocked Bootstrap[/C][/ROW]
[ROW][C]statistic[/C][C]Q1[/C][C]Estimate[/C][C]Q3[/C][C]S.D.[/C][C]IQR[/C][/ROW]
[ROW][C]mean[/C][C]85.758606557377[/C][C]86.8934426229508[/C][C]88.1127049180328[/C][C]1.74030413863268[/C][C]2.35409836065574[/C][/ROW]
[ROW][C]median[/C][C]86.4[/C][C]87.3[/C][C]88[/C][C]1.95799111806894[/C][C]1.59999999999999[/C][/ROW]
[ROW][C]midrange[/C][C]88.1[/C][C]88.1[/C][C]88.85[/C][C]1.13028896583687[/C][C]0.75[/C][/ROW]
[/TABLE]
Source: https://freestatistics.org/blog/index.php?pk=20830&T=1

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=20830&T=1

As an alternative you can also use a QR Code:  

The GUIDs for individual cells are displayed in the table below:

Estimation Results of Blocked Bootstrap
statisticQ1EstimateQ3S.D.IQR
mean85.75860655737786.893442622950888.11270491803281.740304138632682.35409836065574
median86.487.3881.957991118068941.59999999999999
midrange88.188.188.851.130288965836870.75



Parameters (Session):
par1 = 500 ; par2 = 12 ;
Parameters (R input):
par1 = 500 ; par2 = 12 ;
R code (references can be found in the software module):
par1 <- as.numeric(par1)
par2 <- as.numeric(par2)
if (par1 < 10) par1 = 10
if (par1 > 5000) par1 = 5000
if (par2 < 3) par2 = 3
if (par2 > length(x)) par2 = length(x)
library(lattice)
library(boot)
boot.stat <- function(s)
{
s.mean <- mean(s)
s.median <- median(s)
s.midrange <- (max(s) + min(s)) / 2
c(s.mean, s.median, s.midrange)
}
(r <- tsboot(x, boot.stat, R=par1, l=12, sim='fixed'))
bitmap(file='plot1.png')
plot(r$t[,1],type='p',ylab='simulated values',main='Simulation of Mean')
grid()
dev.off()
bitmap(file='plot2.png')
plot(r$t[,2],type='p',ylab='simulated values',main='Simulation of Median')
grid()
dev.off()
bitmap(file='plot3.png')
plot(r$t[,3],type='p',ylab='simulated values',main='Simulation of Midrange')
grid()
dev.off()
bitmap(file='plot4.png')
densityplot(~r$t[,1],col='black',main='Density Plot',xlab='mean')
dev.off()
bitmap(file='plot5.png')
densityplot(~r$t[,2],col='black',main='Density Plot',xlab='median')
dev.off()
bitmap(file='plot6.png')
densityplot(~r$t[,3],col='black',main='Density Plot',xlab='midrange')
dev.off()
z <- data.frame(cbind(r$t[,1],r$t[,2],r$t[,3]))
colnames(z) <- list('mean','median','midrange')
bitmap(file='plot7.png')
boxplot(z,notch=TRUE,ylab='simulated values',main='Bootstrap Simulation - Central Tendency')
grid()
dev.off()
load(file='createtable')
a<-table.start()
a<-table.row.start(a)
a<-table.element(a,'Estimation Results of Blocked Bootstrap',6,TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'statistic',header=TRUE)
a<-table.element(a,'Q1',header=TRUE)
a<-table.element(a,'Estimate',header=TRUE)
a<-table.element(a,'Q3',header=TRUE)
a<-table.element(a,'S.D.',header=TRUE)
a<-table.element(a,'IQR',header=TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'mean',header=TRUE)
q1 <- quantile(r$t[,1],0.25)[[1]]
q3 <- quantile(r$t[,1],0.75)[[1]]
a<-table.element(a,q1)
a<-table.element(a,r$t0[1])
a<-table.element(a,q3)
a<-table.element(a,sqrt(var(r$t[,1])))
a<-table.element(a,q3-q1)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'median',header=TRUE)
q1 <- quantile(r$t[,2],0.25)[[1]]
q3 <- quantile(r$t[,2],0.75)[[1]]
a<-table.element(a,q1)
a<-table.element(a,r$t0[2])
a<-table.element(a,q3)
a<-table.element(a,sqrt(var(r$t[,2])))
a<-table.element(a,q3-q1)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'midrange',header=TRUE)
q1 <- quantile(r$t[,3],0.25)[[1]]
q3 <- quantile(r$t[,3],0.75)[[1]]
a<-table.element(a,q1)
a<-table.element(a,r$t0[3])
a<-table.element(a,q3)
a<-table.element(a,sqrt(var(r$t[,3])))
a<-table.element(a,q3-q1)
a<-table.row.end(a)
a<-table.end(a)
table.save(a,file='mytable.tab')