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 computationThu, 30 Oct 2008 09:02:36 -0600
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/Oct/30/t1225379000vvm5gcvh06qt8i0.htm/, Retrieved Tue, 14 May 2024 02:52:10 +0000
Statistical Computations at FreeStatistics.org, Office for Research Development and Education, URL https://freestatistics.org/blog/index.php?pk=20077, Retrieved Tue, 14 May 2024 02:52:10 +0000
QR Codes:

Original text written by user:
IsPrivate?No (this computation is public)
User-defined keywords
Estimated Impact173
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] [Q4: Blocked boots...] [2008-10-30 15:02:36] [8758b22b4a10c08c31202f233362e983] [Current]
F           [Blocked Bootstrap Plot - Central Tendency] [Q4] [2008-11-03 22:03:10] [76963dc1903f0f612b6153510a3818cf]
Feedback Forum
2008-11-10 17:07:31 [Matthieu Blondeau] [reply
De midrange heeft de kleinste spreiding, de waarden liggen dicht op elkaar. Er zijn echter wel veel outliers terug te vinden.
Men kan hier nog altijd kiezen welke estimator er genomen gaat worden. Ofwel kiest men een brede betrouwbaarheidsinterval met minder kans dat men hierbuiten valt(minder kans op outliers). Ofwel kiest men een kleine betrouwbaarheidsinterval met veel kans om hierbuiten te vallen(veel kans op outliers). Hoe groter de spreiding, hoe onnauwkeuriger het gemiddelde.

Ik heb hier ook de midrange gekozen, wat correct is maar de andere zijn even bruikbaar. De outliers zijn hier wel relevant.
2008-11-11 14:47:04 [Liese Tormans] [reply
Bij deze grafieken gaat men de dataset nemen en de gemiddeldes berekenen, maar telkens wordt er random 1 observatie weggelaten en de berekening zo een 500 tal keer uitgevoerd.

Zoals de student gezegd heeft is de midrange een goede benadering maar het is niet de enige oplossing.

Bij de mean zien we een mooie random verspreiding rond het gemiddelde
Bij de median wordt het patroon duidelijker en gaan de berekeningen meer naar een lijn gaan
Bij de midrange wordt het patroon nog veel duidelijker, de spreiding is hier veel kleiner dan bij de mean en ook kleiner dan bij de median.

We kunnen voor deze vraag dus twee keuze’s gaan maken.

Als we kiezen voor de midrange als beste estimator. Is er maar een kleine spreiding van de observaties zichtbaar dus als we dan een observatie nemen die buiten het 95% betrouwbaarheidsinterval ligt, dan valt deze er ook extreem buiten.

Als we kiezen voor de mean, zien we dat er een grotere spreiding van de observaties zichtbaar is, zo heeft men wel meer zekerheid dat als men iets van deze waarde afwijkt, deze waardes toch nog tussen het betrouwbaarheidsinterval liggen.

Verder moet er ook gezegd worden dat de outliers berekeningen zijn van de gemiddeldes en wel relevant zijn in dit gegeven.
2008-11-11 20:03:06 [Joachim Van Hemelen] [reply
'Beste' estimator is hier een duaal begrip. “Beste” kan zowel als meest nauwkeurig, als meest zeker gemiddelde geïnterpreteerd worden.

Het meest nauwkeurige komt tot stand bij de mid-range, maar enkel als er geen outliers zijn. Outliers zijn hier dus zeer relevant.

Wordt er geopteerd voor het meest zekere gemiddelde, dan kan men als estimator best de mean nemen. Hier is de spreiding en het betrouwbaarheidsinterval veel groter, met gevolg dat er een kleinere nauwkeurigheid is.

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 time5 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 & 5 seconds \tabularnewline
R Server & 'Gwilym Jenkins' @ 72.249.127.135 \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=20077&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]5 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=20077&T=0

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=20077&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 time5 seconds
R Server'Gwilym Jenkins' @ 72.249.127.135







Estimation Results of Blocked Bootstrap
statisticQ1EstimateQ3S.D.IQR
mean85.66639344262386.893442622950888.15778688524591.691427398774492.49139344262295
median86.487.3881.879936584868291.59999999999999
midrange87.8588.188.851.012568605261261

\begin{tabular}{lllllllll}
\hline
Estimation Results of Blocked Bootstrap \tabularnewline
statistic & Q1 & Estimate & Q3 & S.D. & IQR \tabularnewline
mean & 85.666393442623 & 86.8934426229508 & 88.1577868852459 & 1.69142739877449 & 2.49139344262295 \tabularnewline
median & 86.4 & 87.3 & 88 & 1.87993658486829 & 1.59999999999999 \tabularnewline
midrange & 87.85 & 88.1 & 88.85 & 1.01256860526126 & 1 \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=20077&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.666393442623[/C][C]86.8934426229508[/C][C]88.1577868852459[/C][C]1.69142739877449[/C][C]2.49139344262295[/C][/ROW]
[ROW][C]median[/C][C]86.4[/C][C]87.3[/C][C]88[/C][C]1.87993658486829[/C][C]1.59999999999999[/C][/ROW]
[ROW][C]midrange[/C][C]87.85[/C][C]88.1[/C][C]88.85[/C][C]1.01256860526126[/C][C]1[/C][/ROW]
[/TABLE]
Source: https://freestatistics.org/blog/index.php?pk=20077&T=1

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=20077&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.66639344262386.893442622950888.15778688524591.691427398774492.49139344262295
median86.487.3881.879936584868291.59999999999999
midrange87.8588.188.851.012568605261261



Parameters (Session):
par1 = 500 ; par2 = 12 ;
Parameters (R input):
par1 = 500 ; par2 = 12 ; par3 = ; par4 = ; par5 = ; par6 = ; par7 = ; par8 = ; par9 = ; par10 = ; par11 = ; par12 = ; par13 = ; par14 = ; par15 = ; par16 = ; par17 = ; par18 = ; par19 = ; par20 = ;
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')