Iterative Koutrouvelis regression method
KoutParamsEstim.Rd
Iterative Koutrouvelis regression method with different spacing schemes (points where the eCF is computed).
Usage
KoutParametersEstim(x, theta0 = NULL,
spacing = c("Kout", "UniformSpac", "ArithSpac", "free"),
pm = 0, tol = 0.05, NbIter = 10, PrintTime = FALSE, ...)
Arguments
- x
data used to perform the estimation: vector of length n.
- theta0
initial guess for the 4 parameters values: vector of length 4
- spacing
scheme used to select the points where the moment conditions are evaluated.
Kout
is the scheme suggested by Koutrouvelis,UniformSpac
andArithSpac
are the uniform and arithmetic spacing schemes over the informative interval [\(\epsilon\),\(A_n\)]. If user choose free, he needs to provide a set of pointst_points
andu_points
in...
.- pm
parametrisation, an integer (0 or 1); default:
pm = 0
(Nolan's ‘S0’ parametrisation).- tol
the loop stops if the relative error between two consecutive estimation is smaller then
tol
; default = 0.05.- NbIter
maximum number of iteration. The loop stops when
NbIter
is reached; default = 10.- PrintTime
logical flag; if set to TRUE, the estimation duration is printed out to the screen in a readable format (h/min/sec).
- ...
other arguments to pass to the function. See Details.
Details
spacing
4 options for the spacing scheme are implemented as described above. In particular:
UniformSpac
,ArithSpac
:The user can specify the number of points to choose in both regression by inputting
nb_t
andnb_u
. Otherwise the Koutrouvelis table will be used to compte them.free
:The user is expected to provide
t_points
andu_points
otherwise theKout
scheme will be used.
Value
a list with the following elements:
- Estim
list
containing the vector of 4 parameters estimate (par
), the 2 regressions objects (reg1
andreg2
) and the matrix of iterations estimate (vals
).- duration
estimation duration in a numerical format.
- method
character
describing the method used.
References
Koutrouvelis IA (1980). “Regression-type estimation of the parameters of stable laws.” Journal of the American Statistical Association, 75(372), pp. 918–928.
Koutrouvelis IA (1981). “An iterative procedure for the estimation of the parameters of stable laws: An iterative procedure for the estimation.” Communications in Statistics-Simulation and Computation, 10(1), pp. 17–28.
Examples
pm <- 0
theta <- c(1.45, 0.5, 1.1, 0.4)
set.seed(1235)
x <- rstable(200, theta[1], theta[2], theta[3], theta[4], pm = pm)
theta0 <- theta - 0.1
spacing <- "Kout"
KoutParametersEstim(x = x, theta0 = theta0,
spacing = spacing, pm = pm)
#> $Estim
#> $Estim$par
#> [1] 1.3344151 0.4676414 1.0085928 0.6678007
#>
#> $Estim$regObject1
#> $Estim$regObject1$alpha
#> [1] 1.334415
#>
#> $Estim$regObject1$gamma
#> [1] 1.008593
#>
#> $Estim$regObject1$obj
#> $coefficients
#> (Intercept) w
#> 0.7088417 1.3344151
#>
#> $residuals
#> [1] -0.05787720 0.04029226 -0.07402443 -0.03429568 0.05751061 0.06609260
#> [7] 0.02759895 0.01291000 0.06764385 0.07514438 -0.04056695 -0.09603401
#> [13] -0.05689624 -0.09900973 -0.18281535 -0.20263143 -0.23564454 -0.27082373
#> [19] -0.33518429 -0.41815004 -0.34564423
#>
#> $effects
#> (Intercept) w
#> -2.88909651 -12.75249112 -0.03718116 -1.04345420 -0.36569028 -0.17901914
#>
#> -0.72032817 -0.44130671 0.04961527 0.99193952 -0.63024592 -0.49598630
#>
#> 0.69735376 -1.80494979 1.31693622 1.74037573 -1.35024588 0.72165765
#>
#> -0.24167200 0.45964172 -0.07459873
#>
#> $rank
#> [1] 2
#>
#> $fitted.values
#> [1] -2.05892986 -1.13398383 -0.59292508 -0.20903779 0.08872832 0.33202096
#> [7] 0.53772194 0.71590824 0.87307970 1.01367436 1.14085770 1.25696699
#> [13] 1.36377719 1.46266798 1.55473311 1.64085428 1.72175269 1.79802574
#> [19] 1.87017385 1.93862040 2.00372673
#>
#> $assign
#> NULL
#>
#> $qr
#> $qr
#> (Intercept) w
#> [1,] -9.558134e+00 2.912218e+00
#> [2,] -7.396163e-01 -9.556615e+00
#> [3,] 4.586215e-01 -8.569227e-01
#> [4,] -2.265525e-01 -4.769813e-01
#> [5,] -1.974310e-01 -2.727447e-02
#> [6,] 5.561188e-02 -1.062211e-01
#> [7,] -1.598650e-02 -8.328343e-02
#> [8,] 1.983991e-02 2.173686e-02
#> [9,] -1.252809e-02 1.661564e-03
#> [10,] -3.035077e-03 1.179246e-02
#> [11,] 3.476299e-04 -7.863231e-03
#> [12,] -1.014034e-03 -5.110691e-03
#> [13,] 6.466102e-04 1.996900e-03
#> [14,] -3.170199e-04 -7.325344e-04
#> [15,] 7.200185e-05 2.244465e-04
#> [16,] 6.891658e-07 -1.169513e-04
#> [17,] -9.251990e-06 8.004342e-05
#> [18,] -3.525780e-06 4.940021e-05
#> [19,] 4.625320e-07 -2.360839e-05
#> [20,] -1.199750e-07 -8.561639e-06
#> [21,] 5.921626e-08 2.143827e-06
#>
#> $qraux
#> [1] 1.385252 1.136024
#>
#> $pivot
#> [1] 1 2
#>
#> $tol
#> [1] 1e-07
#>
#> $rank
#> [1] 2
#>
#> attr(,"class")
#> [1] "qr"
#>
#> $df.residual
#> [1] 19
#>
#> $terms
#> y ~ w
#> attr(,"variables")
#> list(y, w)
#> attr(,"factors")
#> w
#> y 0
#> w 1
#> attr(,"term.labels")
#> [1] "w"
#> attr(,"order")
#> [1] 1
#> attr(,"intercept")
#> [1] 1
#> attr(,"response")
#> [1] 1
#> attr(,".Environment")
#> <environment: 0x56223c681000>
#> attr(,"predvars")
#> list(y, w)
#> attr(,"dataClasses")
#> y w
#> "numeric" "numeric"
#>
#> $call
#> lm.gls(formula = y ~ w, W = sig, inverse = TRUE)
#>
#> $xlevels
#> named list()
#>
#> attr(,"class")
#> [1] "lm.gls"
#>
#> $Estim$regObject1$updatedData
#> [1] -0.626933424 -0.722570038 -2.383259156 2.403082886 0.993929693
#> [6] -1.179618588 -0.823781073 0.342432858 -0.544732252 -2.636008744
#> [11] 3.006516247 -0.494420604 -1.131950271 -0.260840472 0.319892188
#> [16] -8.871491763 1.612402224 -0.383010903 -0.067098228 1.280735952
#> [21] -2.418525878 4.357222048 1.351933392 -1.111651724 -2.381504635
#> [26] 1.230201551 -1.838725853 -0.840261119 -2.849381002 -0.681011824
#> [31] -0.105437015 -0.988982776 0.164135986 -0.425440079 -2.109310242
#> [36] -0.421339197 -1.355627428 -2.592407493 -0.284291044 -1.075824274
#> [41] -0.924269723 2.930037067 -3.587158102 -1.192462096 3.076546141
#> [46] 2.026704817 -1.805413153 -0.848286649 -0.021069395 -1.778134358
#> [51] -1.831695318 -1.348231297 -1.258149400 -2.313893859 -0.860540285
#> [56] -0.040732426 -2.030051766 1.200154039 -0.495555913 -2.535110841
#> [61] -0.830010838 -0.773541122 -2.292878431 -0.089297603 13.373256152
#> [66] -0.810038048 -1.962963696 2.235511791 2.161293706 -3.536976857
#> [71] 1.778112999 -0.568805990 0.005438781 -2.294454376 -0.908567864
#> [76] 1.534477240 -7.130534721 -0.944800156 2.919490321 -3.529773840
#> [81] -0.557014475 0.181842975 -2.999932316 -1.579776309 -0.345316355
#> [86] 0.644682788 -0.854012470 1.165438366 -2.764356968 -1.487143921
#> [91] -0.633522156 -3.495262901 -1.893289735 -1.175698406 -0.184887331
#> [96] -1.270711831 0.135692892 0.280685554 115.160789010 -0.344421118
#> [101] -0.271014960 1.038545633 -5.639841670 -0.095688616 -0.511490911
#> [106] -1.611364715 -0.743067270 2.464408490 4.604983727 -4.116897352
#> [111] 3.923263909 -2.178734707 -0.250667027 -1.606707628 -1.301101620
#> [116] -1.283885028 -1.504903136 2.803195437 -1.606649302 7.159408263
#> [121] 0.928531765 -0.200074912 -0.706378788 3.430007742 -0.937316767
#> [126] -0.868270444 -3.312635562 -1.636513940 0.075269659 -0.611841973
#> [131] 0.247478644 1.425506684 -3.261735414 0.333644252 1.057669745
#> [136] 0.357680615 -2.308920534 -1.019030988 -1.277398464 -2.164374185
#> [141] -0.510920464 -0.149071819 -0.082272347 -0.106027976 -1.286002082
#> [146] 6.011522834 0.901826329 -2.509077140 -1.708738376 -13.184319957
#> [151] -0.124998067 -1.501454459 -1.454259201 0.743984706 -2.212461930
#> [156] -1.261411484 -1.596635311 -0.628765150 -1.226249012 -1.105750477
#> [161] -0.327003174 3.751433032 1.416651709 -0.566832174 0.011391106
#> [166] -0.626765893 -0.290205685 0.281344241 -3.353261333 -0.051925272
#> [171] 0.657999833 -1.038381031 -0.014177686 0.767003357 0.886416745
#> [176] -1.159231571 0.840368069 -2.836240756 -3.635908314 -0.095890406
#> [181] -3.479619778 -1.336547594 -0.555365153 -1.964800649 -0.097427363
#> [186] -2.441086333 -0.465432481 1.914286202 0.350360387 -0.428384672
#> [191] 1.774025059 1.127742215 -1.553577895 -0.151862620 12.068249607
#> [196] -1.680149738 11.823836616 -1.205903417 -1.719171620 3.172317401
#>
#>
#> $Estim$regObject2
#> $Estim$regObject2$beta
#> [1] 0.4676414
#>
#> $Estim$regObject2$delta
#> [1] 0.6678007
#>
#> $Estim$regObject2$obj
#> $coefficients
#> u Om
#> -0.02991856 -0.80680953
#>
#> $residuals
#> [1] -0.0003928949 0.0013324999 -0.0032343258 -0.0113183750 -0.0138728714
#> [6] -0.0044447134 0.0144084290 0.0326832941 0.0391892862 0.0287596496
#> [11] 0.0075947863 -0.0097960422 -0.0131611042
#>
#> $effects
#> u Om
#> -6.14625911 2.35525590 1.62845436 -0.09577137 -1.46623619 0.26650545
#>
#> -0.12977734 -0.15814915 0.16767628 0.20991726 -0.19669805 -0.17729849
#>
#> -0.15574861
#>
#> $rank
#> [1] 2
#>
#> $fitted.values
#> [1] -0.02197281 -0.05442877 -0.09268012 -0.13529322 -0.18149101 -0.23077213
#> [7] -0.28278109 -0.33725019 -0.39396921 -0.45276787 -0.51350491 -0.57606088
#> [13] -0.64033324
#>
#> $assign
#> NULL
#>
#> $qr
#> $qr
#> u Om
#> [1,] 9.0864682745 7.28103091
#> [2,] 0.1347664608 -2.91922173
#> [3,] 0.1473166164 0.29669835
#> [4,] -0.0020693168 -0.37701712
#> [5,] 0.0526670375 0.15972862
#> [6,] 0.0055423598 -0.21230884
#> [7,] 0.0244398529 0.10568262
#> [8,] 0.0005303477 -0.12716215
#> [9,] 0.0089739577 0.09016390
#> [10,] 0.0042369355 0.09035207
#> [11,] -0.0041972146 -0.08227781
#> [12,] -0.0033774937 -0.07550927
#> [13,] -0.0026543150 -0.06679224
#>
#> $qraux
#> [1] 1.978057 1.799172
#>
#> $pivot
#> [1] 1 2
#>
#> $tol
#> [1] 1e-07
#>
#> $rank
#> [1] 2
#>
#> attr(,"class")
#> [1] "qr"
#>
#> $df.residual
#> [1] 11
#>
#> $terms
#> z ~ -1 + u + Om
#> attr(,"variables")
#> list(z, u, Om)
#> attr(,"factors")
#> u Om
#> z 0 0
#> u 1 0
#> Om 0 1
#> attr(,"term.labels")
#> [1] "u" "Om"
#> attr(,"order")
#> [1] 1 1
#> attr(,"intercept")
#> [1] 0
#> attr(,"response")
#> [1] 1
#> attr(,".Environment")
#> <environment: 0x56223c373700>
#> attr(,"predvars")
#> list(z, u, Om)
#> attr(,"dataClasses")
#> z u Om
#> "numeric" "numeric" "numeric"
#>
#> $call
#> lm.gls(formula = z ~ -1 + u + Om, W = sig2, inverse = TRUE)
#>
#> $xlevels
#> named list()
#>
#> attr(,"class")
#> [1] "lm.gls"
#>
#> $Estim$regObject2$updatedData
#> [1] -0.597014868 -0.692651483 -2.353340601 2.433001442 1.023848248
#> [6] -1.149700033 -0.793862517 0.372351413 -0.514813697 -2.606090188
#> [11] 3.036434803 -0.464502048 -1.102031716 -0.230921916 0.349810743
#> [16] -8.841573208 1.642320780 -0.353092348 -0.037179672 1.310654508
#> [21] -2.388607322 4.387140603 1.381851948 -1.081733168 -2.351586079
#> [26] 1.260120107 -1.808807297 -0.810342563 -2.819462446 -0.651093268
#> [31] -0.075518460 -0.959064220 0.194054542 -0.395521523 -2.079391686
#> [36] -0.391420641 -1.325708872 -2.562488937 -0.254372488 -1.045905719
#> [41] -0.894351168 2.959955623 -3.557239547 -1.162543541 3.106464696
#> [46] 2.056623373 -1.775494597 -0.818368093 0.008849161 -1.748215802
#> [51] -1.801776763 -1.318312741 -1.228230844 -2.283975303 -0.830621729
#> [56] -0.010813870 -2.000133210 1.230072594 -0.465637358 -2.505192285
#> [61] -0.800092282 -0.743622566 -2.262959875 -0.059379047 13.403174708
#> [66] -0.780119493 -1.933045140 2.265430346 2.191212262 -3.507058302
#> [71] 1.808031555 -0.538887434 0.035357337 -2.264535820 -0.878649308
#> [76] 1.564395796 -7.100616165 -0.914881600 2.949408877 -3.499855285
#> [81] -0.527095919 0.211761531 -2.970013760 -1.549857753 -0.315397799
#> [86] 0.674601344 -0.824093914 1.195356922 -2.734438413 -1.457225366
#> [91] -0.603603600 -3.465344345 -1.863371180 -1.145779851 -0.154968775
#> [96] -1.240793275 0.165611448 0.310604109 115.190707565 -0.314502562
#> [101] -0.241096404 1.068464189 -5.609923114 -0.065770060 -0.481572356
#> [106] -1.581446160 -0.713148714 2.494327045 4.634902283 -4.086978796
#> [111] 3.953182465 -2.148816152 -0.220748472 -1.576789072 -1.271183064
#> [116] -1.253966473 -1.474984581 2.833113993 -1.576730746 7.189326819
#> [121] 0.958450321 -0.170156357 -0.676460232 3.459926298 -0.907398211
#> [126] -0.838351888 -3.282717007 -1.606595384 0.105188214 -0.581923418
#> [131] 0.277397200 1.455425240 -3.231816858 0.363562807 1.087588300
#> [136] 0.387599171 -2.279001978 -0.989112432 -1.247479908 -2.134455629
#> [141] -0.481001908 -0.119153264 -0.052353791 -0.076109421 -1.256083526
#> [146] 6.041441390 0.931744885 -2.479158585 -1.678819820 -13.154401401
#> [151] -0.095079511 -1.471535903 -1.424340646 0.773903261 -2.182543375
#> [156] -1.231492928 -1.566716755 -0.598846594 -1.196330457 -1.075831921
#> [161] -0.297084618 3.781351587 1.446570265 -0.536913619 0.041309662
#> [166] -0.596847338 -0.260287130 0.311262797 -3.323342777 -0.022006717
#> [171] 0.687918388 -1.008462475 0.015740870 0.796921912 0.916335300
#> [176] -1.129313015 0.870286625 -2.806322200 -3.605989758 -0.065971851
#> [181] -3.449701222 -1.306629038 -0.525446598 -1.934882094 -0.067508807
#> [186] -2.411167777 -0.435513925 1.944204757 0.380278943 -0.398466116
#> [191] 1.803943615 1.157660771 -1.523659339 -0.121944064 12.098168163
#> [196] -1.650231182 11.853755171 -1.175984861 -1.689253064 3.202235956
#>
#>
#> $Estim$vals
#> [,1] [,2] [,3] [,4]
#> [1,] 1.350000 0.4000000 1.0000000 0.3000000
#> [2,] 1.254499 0.5118235 0.9543142 0.9918242
#> [3,] 1.311907 0.4495955 0.9967998 0.6979764
#> [4,] 1.334415 0.4676414 1.0085928 0.6678007
#>
#>
#> $duration
#> elapsed
#> 0.304
#>
#> $method
#> [1] "Koutrouvelis_spacing=Kout"
#>