Free Statistics

of Irreproducible Research!

Author's title

Author*The author of this computation has been verified*
R Software Modulerwasp_boxcoxlin.wasp
Title produced by softwareBox-Cox Linearity Plot
Date of computationTue, 11 Nov 2008 07:51:35 -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/11/t1226415160rj5crv92hy61r6f.htm/, Retrieved Sun, 19 May 2024 10:21:25 +0000
Statistical Computations at FreeStatistics.org, Office for Research Development and Education, URL https://freestatistics.org/blog/index.php?pk=23550, Retrieved Sun, 19 May 2024 10:21:25 +0000
QR Codes:

Original text written by user:
IsPrivate?No (this computation is public)
User-defined keywords
Estimated Impact179
Family? (F = Feedback message, R = changed R code, M = changed R Module, P = changed Parameters, D = changed Data)
F     [Bivariate Kernel Density Estimation] [Bivariate Kernel ...] [2008-11-10 16:53:50] [819b576fab25b35cfda70f80599828ec]
F    D  [Bivariate Kernel Density Estimation] [Bivaritae Kernel ...] [2008-11-10 16:58:43] [819b576fab25b35cfda70f80599828ec]
F RMPD    [Partial Correlation] [Partial Correlati...] [2008-11-10 17:08:28] [819b576fab25b35cfda70f80599828ec]
- RMPD      [Trivariate Scatterplots] [Trivariate Scatte...] [2008-11-10 17:21:24] [819b576fab25b35cfda70f80599828ec]
F RMPD        [Hierarchical Clustering] [Hierarchical Clus...] [2008-11-10 17:36:33] [819b576fab25b35cfda70f80599828ec]
F RM D            [Box-Cox Linearity Plot] [Box-Cox linearity...] [2008-11-11 14:51:35] [286e96bd53289970f8e5f25a93fb50b3] [Current]
Feedback Forum
2008-11-14 18:25:19 [Kevin Neelen] [reply
Door gebruik te maken van de Box-Cox-transformatie, kunnen met een formule tijdreeksen simpel aangepast worden. Hierdoor kunnen sommige problemen opgelost worden, zoals het ontdekken van niet-lineaire verbanden tussen reeksen. Door deze transformatie wordt deze niet-lineaire verbanden lineair gemaakt waardoor we ze kunnen bestuderen. Bij de gekozen Lambda-waarde waarbij de correlatiewaarde het hoogste is, is het verband tussen de reeksen het sterkst. Deze grafiek loopt over Lambda-waarden tussen -2 en 2 aangezien deze waarden het meest voorkomen. Als we geen maximum kunnen zien, kan er geen conclusie getrokken worden.

In deze Box-Cox Linearity Plot zien we duidelijk een maximum in de grafiek van de correlatiewaarde. Dit is het geval bij een Lambda-waarde van -0,05.

2008-11-21 17:18:31 [Michael Van Spaandonck] [reply
Een naar mijn mening volledige en duidelijke oplossingsbeschrijving in het bijhorende document.

Bij een Box-Cox transformatie worden de originele x-waarden (aantal inschrijvingen nieuwe wagens) vervangen door een bewerking van deze waarden.
X wordt vervangen door ((X^lambda – 1)/lambda). Door deze transformatie worden niet-lineaire verbanden lineair gemaakt waardoor we ze door middel van eenvoudige tests op basis van lineariteit kunnen bestuderen.

De software laat de lambdawaarde steeds wijzigen en zoekt zo naar een optimum. Dit optimum wordt bereikt wanneer de getransformeerde X-waarden de grootste correlatie vertonen met de originele y-waarden.

We zien op deze grafiek dat we een optimaal transformatiemodel bereiken wanneer de lambda-waarde -0,05.bedraagt. De correlatie bedraagt hier 0.77117686341234.
2008-11-21 18:48:56 [Michael Van Spaandonck] [reply
De bewerking is dus de volgende:
( ( X^lambda - 1 ) / lambda )
2008-11-22 15:25:50 [Jeroen Michel] [reply
Met deze formule kan je een tijdreeks transformeren en op die manier problemen oplossen. VB: De scatterplot doet denken dat er een lineair verband bestaat, maar eigenlijk is er geen verband.
Met deze formule probeert de PC alle transformaties voor de verschillende lambda-waarden en op die manier ervoor te zorgen dat de correlatie het grootst wordt.
We moeten afleiden uit onze grafiek waar het maximum bereikt word, want daar is de correlatie het grootst.

In deze Box-Cox Linearity Plot zien we duidelijk een maximum in de grafiek van de correlatiewaarde. Dit is het geval bij een Lambda-waarde van -0,05.


Post a new message
Dataseries X:
54.281
63.654
68.918
58.686
67.074
60.183
54.326
54.085
53.564
60.873
53.398
45.164
59.672
56.298
62.361
56.930
62.954
62.431
52.528
54.060
53.093
52.695
52.333
41.747
58.576
57.851
63.721
63.384
61.141
59.231
63.472
49.214
55.816
61.713
48.664
45.351
57.888
54.091
59.098
58.962
55.433
60.403
60.721
48.440
57.981
60.258
47.312
46.980
54.846
56.824
67.744
62.849
54.691
65.461
53.724
54.560
57.722
55.458
48.490
46.362
Dataseries Y:
58.972
59.249
63.955
53.785
52.760
44.795
37.348
32.370
32.717
40.974
33.591
21.124
58.608
46.865
51.378
46.235
47.206
45.382
41.227
33.795
31.295
42.625
33.625
21.538
56.421
53.152
53.536
52.408
41.454
38.271
35.306
26.414
31.917
38.030
27.534
18.387
50.556
43.901
48.572
43.899
37.532
40.357
35.489
29.027
34.485
42.598
30.306
26.451
47.460
50.104
61.465
53.726
39.477
43.895
31.481
29.896
33.842
39.120
33.702
25.094




Summary of computational transaction
Raw Inputview raw input (R code)
Raw Outputview raw output of R engine
Computing time3 seconds
R Server'Herman Ole Andreas Wold' @ 193.190.124.10:1001

\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 & 'Herman Ole Andreas Wold' @ 193.190.124.10:1001 \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=23550&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]'Herman Ole Andreas Wold' @ 193.190.124.10:1001[/C][/ROW]
[/TABLE]
Source: https://freestatistics.org/blog/index.php?pk=23550&T=0

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=23550&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'Herman Ole Andreas Wold' @ 193.190.124.10:1001







Box-Cox Linearity Plot
# observations x60
maximum correlation0.77117686341234
optimal lambda(x)-0.05
Residual SD (orginial)6.93336957978483
Residual SD (transformed)6.90842147120852

\begin{tabular}{lllllllll}
\hline
Box-Cox Linearity Plot \tabularnewline
# observations x & 60 \tabularnewline
maximum correlation & 0.77117686341234 \tabularnewline
optimal lambda(x) & -0.05 \tabularnewline
Residual SD (orginial) & 6.93336957978483 \tabularnewline
Residual SD (transformed) & 6.90842147120852 \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=23550&T=1

[TABLE]
[ROW][C]Box-Cox Linearity Plot[/C][/ROW]
[ROW][C]# observations x[/C][C]60[/C][/ROW]
[ROW][C]maximum correlation[/C][C]0.77117686341234[/C][/ROW]
[ROW][C]optimal lambda(x)[/C][C]-0.05[/C][/ROW]
[ROW][C]Residual SD (orginial)[/C][C]6.93336957978483[/C][/ROW]
[ROW][C]Residual SD (transformed)[/C][C]6.90842147120852[/C][/ROW]
[/TABLE]
Source: https://freestatistics.org/blog/index.php?pk=23550&T=1

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

As an alternative you can also use a QR Code:  

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

Box-Cox Linearity Plot
# observations x60
maximum correlation0.77117686341234
optimal lambda(x)-0.05
Residual SD (orginial)6.93336957978483
Residual SD (transformed)6.90842147120852



Parameters (Session):
Parameters (R input):
R code (references can be found in the software module):
n <- length(x)
c <- array(NA,dim=c(401))
l <- array(NA,dim=c(401))
mx <- 0
mxli <- -999
for (i in 1:401)
{
l[i] <- (i-201)/100
if (l[i] != 0)
{
x1 <- (x^l[i] - 1) / l[i]
} else {
x1 <- log(x)
}
c[i] <- cor(x1,y)
if (mx < abs(c[i]))
{
mx <- abs(c[i])
mxli <- l[i]
}
}
c
mx
mxli
if (mxli != 0)
{
x1 <- (x^mxli - 1) / mxli
} else {
x1 <- log(x)
}
r<-lm(y~x)
se <- sqrt(var(r$residuals))
r1 <- lm(y~x1)
se1 <- sqrt(var(r1$residuals))
bitmap(file='test1.png')
plot(l,c,main='Box-Cox Linearity Plot',xlab='Lambda',ylab='correlation')
grid()
dev.off()
bitmap(file='test2.png')
plot(x,y,main='Linear Fit of Original Data',xlab='x',ylab='y')
abline(r)
grid()
mtext(paste('Residual Standard Deviation = ',se))
dev.off()
bitmap(file='test3.png')
plot(x1,y,main='Linear Fit of Transformed Data',xlab='x',ylab='y')
abline(r1)
grid()
mtext(paste('Residual Standard Deviation = ',se1))
dev.off()
load(file='createtable')
a<-table.start()
a<-table.row.start(a)
a<-table.element(a,'Box-Cox Linearity Plot',2,TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'# observations x',header=TRUE)
a<-table.element(a,n)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'maximum correlation',header=TRUE)
a<-table.element(a,mx)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'optimal lambda(x)',header=TRUE)
a<-table.element(a,mxli)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'Residual SD (orginial)',header=TRUE)
a<-table.element(a,se)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'Residual SD (transformed)',header=TRUE)
a<-table.element(a,se1)
a<-table.row.end(a)
a<-table.end(a)
table.save(a,file='mytable.tab')