This notebook present a way of performing the SmoothPLS algorithm for a Scalar Functional Data.
It shows that Smooth PLS over perform FPLS with a time vector regul_time without a lot of points, and even with a lot of points.
Parameters
nind = 100 # number of individuals (train set)
start = 0 # First time
end = 100 # end time
lambda_0 = 0.2 # Exponential law parameter for state 0
lambda_1 = 0.1 # Exponential law parameter for state 1
prob_start = 0.5 # Probability of starting with state 1
curve_type = 'num'
TTRatio = 0.2 # Train Test Ratio means we have floor(nind*TTRatio/(1-TTRatio))
# individuals in the test set
NotS_ratio = 0.2 # noise variance over total variance for Y
beta_0_real=5.4321 # Intercept value for the link between X(t) and Y
nbasis = 10 # number of basis functions
norder = 4 # 4 for cubic splines basis
regul_time = seq(start, end, 5)
regul_time_0 = seq(start, end, 1)
beta_real_func = beta_4_real_func # link between X(t) and Y
int_mode = 2 # in case of integration errors.Synthetic SFD data
We can also generate synthetic Scalar Functional Data SFD. The important input is type=‘num’.
Generate_X_df
For SFD for X_df two new arguments are important: the noise added to the signal and the seed for repeatability.
df = generate_X_df(nind = nind, start = start,end = end, curve_type = 'num',
noise_sd = 0.15, seed = 123)
head(df)
#> id time value
#> 1 1 0 1.2591356
#> 2 1 1 0.7193661
#> 3 1 2 1.0470795
#> 4 1 3 0.7297674
#> 5 1 4 0.6105385
#> 6 1 5 0.5351208
# Visualisation
ggplot(df, aes(x = time, y = value, group = id, color = factor(id))) +
geom_line(alpha = 0.8) +
labs(title = "Noised cosinus curves",
x = "Time", y = "Value",
color = "Individual") +
theme_minimal() +
theme(legend.position = "none")
Data manipulation
regularize_time_series
df_regul = regularize_time_series(df, time_seq = regul_time,
curve_type = 'num')
df_regul
#> id time value
#> 1 1 0 1.2591356058
#> 2 1 5 0.5351207804
#> 3 1 10 0.2642695075
#> 4 1 15 -0.6025342230
#> 5 1 20 -1.3168846512
#> 6 1 25 -1.8577736968
#> 7 1 30 -2.0244393652
#> 8 1 35 -2.4807905328
#> 9 1 40 -1.7434094354
#> 10 1 45 -1.4872290083
#> 11 1 50 -0.8271237339
#> 12 1 55 -0.2641780101
#> 13 1 60 -0.0009657591
#> 14 1 65 0.8215195183
#> 15 1 70 1.1315289749
#> 16 1 75 1.5800859428
#> 17 1 80 1.8865890447
#> 18 1 85 2.0962514088
#> 19 1 90 1.7692432166
#> 20 1 95 1.5935932108
#> 21 1 100 1.0862570388
#> 22 2 0 0.9378618266
#> 23 2 5 0.6455078797
#> 24 2 10 -0.0370698945
#> 25 2 15 -0.8799845182
#> 26 2 20 -0.9900684367
#> 27 2 25 -1.6936381825
#> 28 2 30 -2.2424851992
#> 29 2 35 -2.2132760824
#> 30 2 40 -2.1036663913
#> 31 2 45 -1.7408282981
#> 32 2 50 -1.0985225027
#> 33 2 55 -0.5638455170
#> 34 2 60 0.0524523369
#> 35 2 65 0.7817098787
#> 36 2 70 1.1554473231
#> 37 2 75 1.6141871697
#> 38 2 80 1.8990561806
#> 39 2 85 1.9217983057
#> 40 2 90 1.6668157353
#> 41 2 95 1.3699517140
#> 42 2 100 1.0184536195
#> 43 3 0 1.0798334185
#> 44 3 5 0.4383151798
#> 45 3 10 0.2912442676
#> 46 3 15 -0.8721678297
#> 47 3 20 -1.5021680660
#> 48 3 25 -1.8288790360
#> 49 3 30 -1.8305280202
#> 50 3 35 -1.9232728029
#> 51 3 40 -1.7840912242
#> 52 3 45 -1.7585617966
#> 53 3 50 -1.1202938975
#> 54 3 55 -0.7749669486
#> 55 3 60 0.2502846840
#> 56 3 65 0.6375337377
#> 57 3 70 1.4490852733
#> 58 3 75 1.5572768287
#> 59 3 80 1.9055420533
#> 60 3 85 1.9460774356
#> 61 3 90 1.6873656325
#> 62 3 95 1.4769868377
#> 63 3 100 1.4495398133
#> 64 4 0 1.3862407145
#> 65 4 5 0.4548514199
#> 66 4 10 0.0217277187
#> 67 4 15 -0.8048020561
#> 68 4 20 -1.2655542240
#> 69 4 25 -1.6263337737
#> 70 4 30 -1.9497806043
#> 71 4 35 -2.0044893942
#> 72 4 40 -1.8904219000
#> 73 4 45 -1.6817548622
#> 74 4 50 -0.6948858899
#> 75 4 55 -0.3850094714
#> 76 4 60 0.0458252243
#> 77 4 65 0.8028850817
#> 78 4 70 0.9981055519
#> 79 4 75 1.7543619614
#> 80 4 80 1.9864136589
#> 81 4 85 1.9106580677
#> 82 4 90 1.8102546048
#> 83 4 95 1.6483781220
#> 84 4 100 1.1146984000
#> 85 5 0 1.4356594782
#> 86 5 5 0.5954593512
#> 87 5 10 -0.2912823356
#> 88 5 15 -0.6410984717
#> 89 5 20 -1.2784589448
#> 90 5 25 -1.6726335208
#> 91 5 30 -2.0908706871
#> 92 5 35 -1.9791599689
#> 93 5 40 -1.8317834667
#> 94 5 45 -1.5189291948
#> 95 5 50 -0.9208314522
#> 96 5 55 -0.4710667657
#> 97 5 60 0.0837581049
#> 98 5 65 0.4704048911
#> 99 5 70 1.1045849630
#> 100 5 75 1.5907515095
#> 101 5 80 1.9831297071
#> 102 5 85 1.9587557227
#> 103 5 90 2.0211248586
#> 104 5 95 1.5504049667
#> 105 5 100 1.0405641227
#> 106 6 0 0.9881392353
#> 107 6 5 0.4800120580
#> 108 6 10 0.0522163067
#> 109 6 15 -0.8101337365
#> 110 6 20 -0.9747700549
#> 111 6 25 -1.7132780979
#> 112 6 30 -1.8045431962
#> 113 6 35 -2.0802744306
#> 114 6 40 -1.6156486566
#> 115 6 45 -1.6422105381
#> 116 6 50 -1.2585355995
#> 117 6 55 -0.4957330891
#> 118 6 60 0.0482636784
#> 119 6 65 0.7302802334
#> 120 6 70 1.1108042715
#> 121 6 75 1.4854654094
#> 122 6 80 2.0101170542
#> 123 6 85 2.2756787375
#> 124 6 90 1.9819937669
#> 125 6 95 1.4204145564
#> 126 6 100 1.2418463733
#> 127 7 0 1.1142373544
#> 128 7 5 0.4851049780
#> 129 7 10 -0.5720259605
#> 130 7 15 -0.8841496568
#> 131 7 20 -1.2416482794
#> 132 7 25 -1.5788710918
#> 133 7 30 -1.7802454338
#> 134 7 35 -1.8495685735
#> 135 7 40 -1.9708957715
#> 136 7 45 -1.6027043283
#> 137 7 50 -1.0358275702
#> 138 7 55 -0.6092822180
#> 139 7 60 -0.1794844779
#> 140 7 65 0.7024246055
#> 141 7 70 1.3099390562
#> 142 7 75 1.4678595562
#> 143 7 80 1.8876150865
#> 144 7 85 1.9956087125
#> 145 7 90 1.7148619524
#> 146 7 95 1.7720582253
#> 147 7 100 1.2071216417
#> 148 8 0 1.1410981614
#> 149 8 5 0.5079109416
#> 150 8 10 0.0329739039
#> 151 8 15 -0.7347735916
#> 152 8 20 -1.1137741771
#> 153 8 25 -1.6518347960
#> 154 8 30 -1.8783015808
#> 155 8 35 -2.0246102132
#> 156 8 40 -1.8928193526
#> 157 8 45 -1.4924624180
#> 158 8 50 -0.8574289370
#> 159 8 55 -0.4657142090
#> 160 8 60 0.0731201495
#> 161 8 65 0.5286320905
#> 162 8 70 1.1685807638
#> 163 8 75 1.6573460269
#> 164 8 80 2.0316251197
#> 165 8 85 2.0381332918
#> 166 8 90 1.8396918610
#> 167 8 95 1.5893045955
#> 168 8 100 0.8993382037
#> 169 9 0 1.3185827460
#> 170 9 5 0.4629034735
#> 171 9 10 -0.0603813954
#> 172 9 15 -0.6274078032
#> 173 9 20 -1.3330837729
#> 174 9 25 -1.5105012723
#> 175 9 30 -1.7063035995
#> 176 9 35 -1.8252200624
#> 177 9 40 -1.9361720048
#> 178 9 45 -1.3182435129
#> 179 9 50 -1.4633157230
#> 180 9 55 -0.4607217469
#> 181 9 60 0.1134147409
#> 182 9 65 0.7648043675
#> 183 9 70 1.3098583262
#> 184 9 75 1.8297805054
#> 185 9 80 2.0004325925
#> 186 9 85 2.0707662500
#> 187 9 90 2.0320682204
#> 188 9 95 1.4258057457
#> 189 9 100 1.1945851367
#> 190 10 0 1.1803785931
#> 191 10 5 0.5723232276
#> 192 10 10 -0.1166378496
#> 193 10 15 -0.5211453024
#> 194 10 20 -1.3353118175
#> 195 10 25 -1.8650336402
#> 196 10 30 -1.8811599742
#> 197 10 35 -1.8533872623
#> 198 10 40 -1.8489480902
#> 199 10 45 -1.6349338338
#> 200 10 50 -0.9326958786
#> 201 10 55 -0.4856958116
#> 202 10 60 0.3418402891
#> 203 10 65 0.9746415720
#> 204 10 70 1.3136320533
#> 205 10 75 1.6455633680
#> 206 10 80 1.5520966998
#> 207 10 85 1.9296482120
#> 208 10 90 1.8317489275
#> 209 10 95 1.8101608312
#> 210 10 100 0.8333303890
#> 211 11 0 0.9331176832
#> 212 11 5 0.6546308056
#> 213 11 10 -0.1528723330
#> 214 11 15 -0.9116440930
#> 215 11 20 -1.5559733957
#> 216 11 25 -1.4135116863
#> 217 11 30 -1.9366976400
#> 218 11 35 -2.1134180841
#> 219 11 40 -2.0190805275
#> 220 11 45 -1.7946432616
#> 221 11 50 -1.2291100526
#> 222 11 55 -0.4273251054
#> 223 11 60 0.0872057561
#> 224 11 65 0.7134863400
#> 225 11 70 1.4884126811
#> 226 11 75 1.3694656844
#> 227 11 80 1.7493179415
#> 228 11 85 1.7519147194
#> 229 11 90 1.9205069179
#> 230 11 95 1.8282478341
#> 231 11 100 1.1876505988
#> 232 12 0 0.8453409186
#> 233 12 5 0.3542108121
#> 234 12 10 -0.1385147681
#> 235 12 15 -0.6828600415
#> 236 12 20 -1.2211908832
#> 237 12 25 -1.4729744662
#> 238 12 30 -2.0598822240
#> 239 12 35 -2.0942690011
#> 240 12 40 -1.6410755575
#> 241 12 45 -1.5627758205
#> 242 12 50 -1.1972478282
#> 243 12 55 -0.4166188679
#> 244 12 60 -0.2148575130
#> 245 12 65 0.5968238570
#> 246 12 70 1.3225844768
#> 247 12 75 1.7774779441
#> 248 12 80 1.9786511242
#> 249 12 85 1.9762715775
#> 250 12 90 1.6250725112
#> 251 12 95 1.4891784390
#> 252 12 100 1.1349574354
#> 253 13 0 0.9539185183
#> 254 13 5 0.5411432876
#> 255 13 10 -0.2140366901
#> 256 13 15 -0.5199075812
#> 257 13 20 -1.3390164223
#> 258 13 25 -1.7900691555
#> 259 13 30 -2.0724620767
#> 260 13 35 -1.9965236114
#> 261 13 40 -1.7577302843
#> 262 13 45 -1.5808106622
#> 263 13 50 -1.1055618166
#> 264 13 55 -0.5248271648
#> 265 13 60 -0.0449239287
#> 266 13 65 0.5374668779
#> 267 13 70 1.4474553115
#> 268 13 75 1.6458282047
#> 269 13 80 2.0124232127
#> 270 13 85 1.9842524644
#> 271 13 90 1.7245877621
#> 272 13 95 1.2058907889
#> 273 13 100 0.9422999610
#> 274 14 0 1.0637206790
#> 275 14 5 0.4418738691
#> 276 14 10 -0.3429290744
#> 277 14 15 -0.6807588944
#> 278 14 20 -1.1311863246
#> 279 14 25 -1.6216686939
#> 280 14 30 -2.1097118593
#> 281 14 35 -1.9251249715
#> 282 14 40 -2.0042703533
#> 283 14 45 -1.4546741930
#> 284 14 50 -0.9847011379
#> 285 14 55 -0.6857812998
#> 286 14 60 0.2331324839
#> 287 14 65 0.6414487997
#> 288 14 70 1.3007899785
#> 289 14 75 1.6408405277
#> 290 14 80 1.9806066274
#> 291 14 85 2.0939265744
#> 292 14 90 1.7743093191
#> 293 14 95 1.5058292406
#> 294 14 100 0.6763052064
#> 295 15 0 0.9242134979
#> 296 15 5 0.5491348779
#> 297 15 10 -0.2577505234
#> 298 15 15 -0.8122698287
#> 299 15 20 -1.3428963474
#> 300 15 25 -1.7906432883
#> 301 15 30 -2.1321959463
#> 302 15 35 -2.2256600689
#> 303 15 40 -1.9919063419
#> 304 15 45 -1.5736327548
#> 305 15 50 -1.2937988592
#> 306 15 55 -0.6390054707
#> 307 15 60 0.0289696526
#> 308 15 65 0.7746519270
#> 309 15 70 1.0125676916
#> 310 15 75 1.6170996123
#> 311 15 80 1.8138296715
#> 312 15 85 1.8153919362
#> 313 15 90 1.6220896723
#> 314 15 95 1.2723238465
#> 315 15 100 1.0143650949
#> 316 16 0 1.1899962569
#> 317 16 5 0.5323385060
#> 318 16 10 -0.1318397693
#> 319 16 15 -0.5892413895
#> 320 16 20 -1.1878358703
#> 321 16 25 -1.7614859743
#> 322 16 30 -1.9241128170
#> 323 16 35 -2.2344407985
#> 324 16 40 -1.9399600315
#> 325 16 45 -1.6666654743
#> 326 16 50 -0.9803622189
#> 327 16 55 -0.4761905048
#> 328 16 60 0.2407138832
#> 329 16 65 0.4698082497
#> 330 16 70 1.4038925353
#> 331 16 75 1.6030017590
#> 332 16 80 1.9487680216
#> 333 16 85 1.9460400122
#> 334 16 90 1.9914783153
#> 335 16 95 1.5231057634
#> 336 16 100 1.1447845849
#> 337 17 0 1.1214100774
#> 338 17 5 0.3138064599
#> 339 17 10 -0.0915248051
#> 340 17 15 -0.5662756569
#> 341 17 20 -1.3877881709
#> 342 17 25 -1.6352884349
#> 343 17 30 -1.9630292062
#> 344 17 35 -2.0019930487
#> 345 17 40 -1.6998455179
#> 346 17 45 -1.2838171682
#> 347 17 50 -1.2438115400
#> 348 17 55 -0.5341321133
#> 349 17 60 0.0098158877
#> 350 17 65 0.8903774137
#> 351 17 70 1.2792507802
#> 352 17 75 1.7298652908
#> 353 17 80 1.9444592947
#> 354 17 85 1.8959489200
#> 355 17 90 1.7266552921
#> 356 17 95 1.6585202945
#> 357 17 100 1.0455336827
#> 358 18 0 1.2116549137
#> 359 18 5 0.5515602561
#> 360 18 10 -0.0458021070
#> 361 18 15 -0.6411054200
#> 362 18 20 -0.9118894077
#> 363 18 25 -1.6845506423
#> 364 18 30 -2.2411696769
#> 365 18 35 -2.0191605663
#> 366 18 40 -1.8334139340
#> 367 18 45 -1.5395548090
#> 368 18 50 -1.0559268055
#> 369 18 55 -0.6623330622
#> 370 18 60 0.3530990961
#> 371 18 65 0.5156833205
#> 372 18 70 1.1674053773
#> 373 18 75 1.7478156835
#> 374 18 80 1.9808551128
#> 375 18 85 2.1648677254
#> 376 18 90 1.8572349203
#> 377 18 95 1.3762762883
#> 378 18 100 1.2108555589
#> 379 19 0 0.9668341267
#> 380 19 5 0.3596472487
#> 381 19 10 -0.0458539363
#> 382 19 15 -0.5190619291
#> 383 19 20 -1.4435603434
#> 384 19 25 -1.8320678672
#> 385 19 30 -2.1474362039
#> 386 19 35 -1.7445075611
#> 387 19 40 -2.0346549016
#> 388 19 45 -1.7959184563
#> 389 19 50 -0.8805518502
#> 390 19 55 -0.5292982014
#> 391 19 60 -0.2117515331
#> 392 19 65 0.7612312637
#> 393 19 70 1.2594774204
#> 394 19 75 1.5731734636
#> 395 19 80 1.6730246326
#> 396 19 85 2.0875409848
#> 397 19 90 1.7991907610
#> 398 19 95 1.6718230418
#> 399 19 100 0.6823048354
#> 400 20 0 1.5030172531
#> 401 20 5 0.7144715887
#> 402 20 10 0.1788786483
#> 403 20 15 -1.0262418113
#> 404 20 20 -1.2376190107
#> 405 20 25 -1.8520440557
#> 406 20 30 -1.8170064894
#> 407 20 35 -1.8395180693
#> 408 20 40 -1.6310026662
#> 409 20 45 -1.7397750675
#> 410 20 50 -1.1496774466
#> 411 20 55 -0.4815380071
#> 412 20 60 0.0308666119
#> 413 20 65 0.6846689369
#> 414 20 70 1.3687615332
#> 415 20 75 1.6027494718
#> 416 20 80 1.7651316846
#> 417 20 85 1.8605019034
#> 418 20 90 1.8165938611
#> 419 20 95 1.6340046593
#> 420 20 100 0.9314326363
#> 421 21 0 1.5332478270
#> 422 21 5 0.5450231634
#> 423 21 10 -0.1803894996
#> 424 21 15 -0.5021989544
#> 425 21 20 -1.4009651413
#> 426 21 25 -1.5553194020
#> 427 21 30 -2.0162574484
#> 428 21 35 -2.1328050514
#> 429 21 40 -1.7044962967
#> 430 21 45 -1.4357612665
#> 431 21 50 -1.0798911245
#> 432 21 55 -0.5057490417
#> 433 21 60 0.0128021723
#> 434 21 65 0.9571520215
#> 435 21 70 1.0649569016
#> 436 21 75 1.8926625456
#> 437 21 80 2.0123339899
#> 438 21 85 1.9891834506
#> 439 21 90 1.9531342412
#> 440 21 95 1.4160964125
#> 441 21 100 1.3309668721
#> 442 22 0 1.1485786168
#> 443 22 5 0.6144989568
#> 444 22 10 -0.0824300702
#> 445 22 15 -0.7385234335
#> 446 22 20 -1.5075054462
#> 447 22 25 -1.6162819251
#> 448 22 30 -1.9343170384
#> 449 22 35 -1.9466754884
#> 450 22 40 -1.8319991410
#> 451 22 45 -1.4419735437
#> 452 22 50 -0.8884116928
#> 453 22 55 -0.4141542531
#> 454 22 60 0.2147741765
#> 455 22 65 0.9368688844
#> 456 22 70 1.1346158557
#> 457 22 75 1.5382190762
#> 458 22 80 2.0235478896
#> 459 22 85 1.8393269696
#> 460 22 90 1.7139622787
#> 461 22 95 1.3158899547
#> 462 22 100 1.1981439229
#> 463 23 0 1.1396625444
#> 464 23 5 0.6134606646
#> 465 23 10 0.0917918771
#> 466 23 15 -1.0240183892
#> 467 23 20 -1.4810877125
#> 468 23 25 -1.9196810210
#> 469 23 30 -2.0232450994
#> 470 23 35 -1.7494035773
#> 471 23 40 -1.7171849106
#> 472 23 45 -1.6548888282
#> 473 23 50 -0.9890698472
#> 474 23 55 -0.3857433904
#> 475 23 60 0.0724793774
#> 476 23 65 0.7850908072
#> 477 23 70 1.4200314220
#> 478 23 75 1.5309735566
#> 479 23 80 1.7473265312
#> 480 23 85 2.0769988417
#> 481 23 90 1.8155903154
#> 482 23 95 1.4222921473
#> 483 23 100 1.0204510170
#> 484 24 0 1.0658966764
#> 485 24 5 0.3553236761
#> 486 24 10 -0.1514457065
#> 487 24 15 -0.6810881915
#> 488 24 20 -1.4807144405
#> 489 24 25 -1.7570005508
#> 490 24 30 -1.8819596890
#> 491 24 35 -2.0399595027
#> 492 24 40 -1.7325407803
#> 493 24 45 -1.4413958835
#> 494 24 50 -1.0581137996
#> 495 24 55 -0.8095886976
#> 496 24 60 0.0668775904
#> 497 24 65 0.9697979768
#> 498 24 70 1.3620399222
#> 499 24 75 1.6729601880
#> 500 24 80 1.7786889519
#> 501 24 85 2.1155010300
#> 502 24 90 1.8627092998
#> 503 24 95 1.6205858958
#> 504 24 100 0.8460435056
#> 505 25 0 0.9544764549
#> 506 25 5 0.6885048525
#> 507 25 10 -0.2650470685
#> 508 25 15 -0.6686919058
#> 509 25 20 -1.2978653334
#> 510 25 25 -1.5511977871
#> 511 25 30 -1.8669429323
#> 512 25 35 -1.9253103531
#> 513 25 40 -1.8049373599
#> 514 25 45 -1.2588465321
#> 515 25 50 -1.1217824833
#> 516 25 55 -0.6201946358
#> 517 25 60 0.3161424274
#> 518 25 65 1.0847396864
#> 519 25 70 1.1567634967
#> 520 25 75 1.8328771143
#> 521 25 80 1.9142427818
#> 522 25 85 1.9970671056
#> 523 25 90 1.7708497393
#> 524 25 95 1.3469305614
#> 525 25 100 1.0181712749
#> 526 26 0 1.1133334246
#> 527 26 5 0.5867516361
#> 528 26 10 -0.2020057370
#> 529 26 15 -0.7284213965
#> 530 26 20 -1.2031919727
#> 531 26 25 -1.5805229908
#> 532 26 30 -1.6425054009
#> 533 26 35 -1.8856210903
#> 534 26 40 -2.0909078206
#> 535 26 45 -1.5319964468
#> 536 26 50 -1.0447970888
#> 537 26 55 -0.6505110551
#> 538 26 60 0.1891756698
#> 539 26 65 0.6596210683
#> 540 26 70 1.4331483118
#> 541 26 75 1.6977154170
#> 542 26 80 2.0433239352
#> 543 26 85 2.0705440913
#> 544 26 90 1.9193725293
#> 545 26 95 1.5682972695
#> 546 26 100 0.8172505093
#> 547 27 0 1.1517169013
#> 548 27 5 0.4093617540
#> 549 27 10 -0.1865845613
#> 550 27 15 -0.5836883036
#> 551 27 20 -1.3340082697
#> 552 27 25 -1.7543809321
#> 553 27 30 -1.9639767495
#> 554 27 35 -1.7032142897
#> 555 27 40 -1.8582582524
#> 556 27 45 -1.5972304482
#> 557 27 50 -1.0386480090
#> 558 27 55 -0.3585068212
#> 559 27 60 0.3131501829
#> 560 27 65 0.5153003325
#> 561 27 70 1.1284994083
#> 562 27 75 1.8532159872
#> 563 27 80 1.9999185603
#> 564 27 85 1.8909865546
#> 565 27 90 1.9485731299
#> 566 27 95 1.6940793812
#> 567 27 100 1.3516510848
#> 568 28 0 1.3197217176
#> 569 28 5 0.4474730484
#> 570 28 10 -0.1977060701
#> 571 28 15 -0.8356031884
#> 572 28 20 -1.2573947628
#> 573 28 25 -1.6210248501
#> 574 28 30 -1.9821045843
#> 575 28 35 -1.9370105413
#> 576 28 40 -1.8346187207
#> 577 28 45 -1.3525018266
#> 578 28 50 -0.9309258028
#> 579 28 55 -0.3517951115
#> 580 28 60 0.5213248880
#> 581 28 65 0.6849803170
#> 582 28 70 1.3901902315
#> 583 28 75 1.7360854230
#> 584 28 80 1.7411000126
#> 585 28 85 2.3308215608
#> 586 28 90 1.9669079789
#> 587 28 95 1.5351467317
#> 588 28 100 0.9139960135
#> 589 29 0 1.0220954775
#> 590 29 5 0.2624817803
#> 591 29 10 0.1138463759
#> 592 29 15 -0.6622898452
#> 593 29 20 -1.0412902197
#> 594 29 25 -1.8098068372
#> 595 29 30 -1.9310337144
#> 596 29 35 -2.1955126798
#> 597 29 40 -1.6421887520
#> 598 29 45 -1.6299142278
#> 599 29 50 -0.9911225558
#> 600 29 55 -0.4095950495
#> 601 29 60 0.0231426086
#> 602 29 65 0.8571796799
#> 603 29 70 1.1547803436
#> 604 29 75 1.5857030744
#> 605 29 80 1.9216354759
#> 606 29 85 1.9626896244
#> 607 29 90 1.9081666431
#> 608 29 95 1.3602027173
#> 609 29 100 1.0772186519
#> 610 30 0 1.2782799537
#> 611 30 5 0.7632292692
#> 612 30 10 -0.1246382609
#> 613 30 15 -0.6975641499
#> 614 30 20 -1.3841128331
#> 615 30 25 -1.5577978587
#> 616 30 30 -1.5447245812
#> 617 30 35 -2.0046011297
#> 618 30 40 -1.8990960693
#> 619 30 45 -1.6001275486
#> 620 30 50 -1.3850831757
#> 621 30 55 -0.4104792929
#> 622 30 60 0.2204312444
#> 623 30 65 0.7011563143
#> 624 30 70 1.3825325428
#> 625 30 75 1.3560671774
#> 626 30 80 1.9668870469
#> 627 30 85 1.9209325800
#> 628 30 90 2.1987763806
#> 629 30 95 1.5697955256
#> 630 30 100 1.1410004895
#> 631 31 0 1.2269370404
#> 632 31 5 0.7603113126
#> 633 31 10 0.0424321096
#> 634 31 15 -0.7228729080
#> 635 31 20 -1.1864950419
#> 636 31 25 -1.6762011361
#> 637 31 30 -1.5208450740
#> 638 31 35 -1.7802014198
#> 639 31 40 -1.8343048403
#> 640 31 45 -1.5770239400
#> 641 31 50 -1.1214158465
#> 642 31 55 -0.5384374574
#> 643 31 60 0.2559681922
#> 644 31 65 0.6641584714
#> 645 31 70 1.3419971223
#> 646 31 75 1.5337389390
#> 647 31 80 1.9576141041
#> 648 31 85 2.1215394410
#> 649 31 90 1.8507784434
#> 650 31 95 1.2466792796
#> 651 31 100 1.3593371130
#> 652 32 0 1.4786657210
#> 653 32 5 0.4756559775
#> 654 32 10 -0.2012303365
#> 655 32 15 -0.7606568853
#> 656 32 20 -1.2757392497
#> 657 32 25 -2.0559205553
#> 658 32 30 -1.8622225119
#> 659 32 35 -1.8575657848
#> 660 32 40 -1.6766814430
#> 661 32 45 -1.5418273326
#> 662 32 50 -0.8819420032
#> 663 32 55 -0.5452989201
#> 664 32 60 0.0713334377
#> 665 32 65 0.2838844320
#> 666 32 70 1.3682171051
#> 667 32 75 1.6646174297
#> 668 32 80 1.9148296876
#> 669 32 85 1.8945889940
#> 670 32 90 1.6529210822
#> 671 32 95 1.4316970803
#> 672 32 100 0.9202468411
#> 673 33 0 0.8391727356
#> 674 33 5 0.6992199229
#> 675 33 10 -0.0397147943
#> 676 33 15 -0.7288910641
#> 677 33 20 -1.2635008763
#> 678 33 25 -1.6542582606
#> 679 33 30 -2.1590976459
#> 680 33 35 -2.0031888474
#> 681 33 40 -1.9695253267
#> 682 33 45 -1.5104461704
#> 683 33 50 -1.0653397311
#> 684 33 55 -0.5540909340
#> 685 33 60 0.1356393448
#> 686 33 65 0.8094105729
#> 687 33 70 1.1563569015
#> 688 33 75 1.9598455499
#> 689 33 80 2.0678629204
#> 690 33 85 1.7154509312
#> 691 33 90 1.8496105608
#> 692 33 95 1.5565211547
#> 693 33 100 0.9546584737
#> 694 34 0 1.0797259870
#> 695 34 5 0.5672111641
#> 696 34 10 -0.2592500791
#> 697 34 15 -0.8116525451
#> 698 34 20 -1.2137676754
#> 699 34 25 -1.6125450772
#> 700 34 30 -1.9555444324
#> 701 34 35 -1.8941811400
#> 702 34 40 -1.8949398365
#> 703 34 45 -1.5009649812
#> 704 34 50 -1.1330627609
#> 705 34 55 -0.4515749650
#> 706 34 60 0.1231288682
#> 707 34 65 0.6394174162
#> 708 34 70 1.5058806352
#> 709 34 75 1.7708002702
#> 710 34 80 1.6781560561
#> 711 34 85 1.8091452993
#> 712 34 90 1.5954218677
#> 713 34 95 1.8392664612
#> 714 34 100 0.9506853333
#> 715 35 0 0.9244878134
#> 716 35 5 0.4359712487
#> 717 35 10 0.0001192319
#> 718 35 15 -0.5740702071
#> 719 35 20 -0.9362823692
#> 720 35 25 -1.9594672061
#> 721 35 30 -1.9108701389
#> 722 35 35 -2.2898617279
#> 723 35 40 -2.0180237136
#> 724 35 45 -1.5440662056
#> 725 35 50 -0.9800687861
#> 726 35 55 -0.3388944289
#> 727 35 60 0.1675666695
#> 728 35 65 0.8355585467
#> 729 35 70 1.2719153358
#> 730 35 75 1.5564138136
#> 731 35 80 2.0677937573
#> 732 35 85 2.0041725597
#> 733 35 90 1.6669738956
#> 734 35 95 1.7303999796
#> 735 35 100 1.0422475172
#> 736 36 0 1.0782231307
#> 737 36 5 0.5964410144
#> 738 36 10 -0.0457460610
#> 739 36 15 -0.6317966301
#> 740 36 20 -1.3792423198
#> 741 36 25 -1.7953595759
#> 742 36 30 -2.0004089898
#> 743 36 35 -1.8603026035
#> 744 36 40 -1.9952022438
#> 745 36 45 -1.6326329857
#> 746 36 50 -1.0325945982
#> 747 36 55 -0.2989939751
#> 748 36 60 0.0744698530
#> 749 36 65 0.6627458303
#> 750 36 70 1.3543348251
#> 751 36 75 1.8367549056
#> 752 36 80 1.7634066604
#> 753 36 85 2.2192473263
#> 754 36 90 1.8537826741
#> 755 36 95 1.7680982810
#> 756 36 100 1.0060096035
#> 757 37 0 1.1723413459
#> 758 37 5 0.6882031991
#> 759 37 10 -0.1810996899
#> 760 37 15 -0.7568776333
#> 761 37 20 -1.1085029359
#> 762 37 25 -1.5761022988
#> 763 37 30 -1.9095284581
#> 764 37 35 -1.7377272978
#> 765 37 40 -1.9483999518
#> 766 37 45 -1.6549565339
#> 767 37 50 -1.3094258473
#> 768 37 55 -0.5151423901
#> 769 37 60 0.1803102146
#> 770 37 65 0.5796301479
#> 771 37 70 0.9011269455
#> 772 37 75 1.8209696048
#> 773 37 80 2.0163612214
#> 774 37 85 2.0530495292
#> 775 37 90 2.1522951653
#> 776 37 95 1.3658967512
#> 777 37 100 0.9502858225
#> 778 38 0 0.9356904427
#> 779 38 5 0.5379163282
#> 780 38 10 -0.1333921841
#> 781 38 15 -0.6989276720
#> 782 38 20 -1.0512809083
#> 783 38 25 -1.8072098669
#> 784 38 30 -2.0141648379
#> 785 38 35 -2.1218705322
#> 786 38 40 -1.5674067517
#> 787 38 45 -1.7040474430
#> 788 38 50 -1.1139757249
#> 789 38 55 -0.5667021870
#> 790 38 60 0.1375129803
#> 791 38 65 0.7990428314
#> 792 38 70 1.4584159900
#> 793 38 75 1.6916195753
#> 794 38 80 2.0165922486
#> 795 38 85 1.8816827211
#> 796 38 90 1.9060974036
#> 797 38 95 1.5146372803
#> 798 38 100 1.1725356551
#> 799 39 0 0.9052595531
#> 800 39 5 0.5792805046
#> 801 39 10 0.0218455150
#> 802 39 15 -0.6350100209
#> 803 39 20 -1.5386335427
#> 804 39 25 -1.8262643301
#> 805 39 30 -2.0886226686
#> 806 39 35 -1.8151159165
#> 807 39 40 -1.7565725608
#> 808 39 45 -1.6592831419
#> 809 39 50 -1.0346262857
#> 810 39 55 -0.5959132408
#> 811 39 60 -0.0602627882
#> 812 39 65 0.6617528189
#> 813 39 70 1.4696129020
#> 814 39 75 1.5220236683
#> 815 39 80 1.6615525800
#> 816 39 85 1.9453046556
#> 817 39 90 1.8352251091
#> 818 39 95 1.7508457390
#> 819 39 100 1.0166024003
#> 820 40 0 1.2487578982
#> 821 40 5 0.2037419510
#> 822 40 10 0.0549015012
#> 823 40 15 -0.7116964594
#> 824 40 20 -1.4080442103
#> 825 40 25 -1.7570904072
#> 826 40 30 -1.9257822400
#> 827 40 35 -2.0612174235
#> 828 40 40 -1.6563472658
#> 829 40 45 -1.5739430634
#> 830 40 50 -1.1409278734
#> 831 40 55 -0.5779889866
#> 832 40 60 0.2038980813
#> 833 40 65 0.7691581024
#> 834 40 70 1.1247192650
#> 835 40 75 1.7978664011
#> 836 40 80 2.0425274633
#> 837 40 85 1.7332254139
#> 838 40 90 2.0356419328
#> 839 40 95 1.6727142761
#> 840 40 100 1.0046889628
#> 841 41 0 1.2320601442
#> 842 41 5 0.6592219968
#> 843 41 10 0.0226428570
#> 844 41 15 -0.4356327036
#> 845 41 20 -1.3382001440
#> 846 41 25 -1.8466162388
#> 847 41 30 -1.7743903705
#> 848 41 35 -2.0675498165
#> 849 41 40 -1.9277451537
#> 850 41 45 -1.4987463537
#> 851 41 50 -0.8281130749
#> 852 41 55 -0.6024113787
#> 853 41 60 0.1302699614
#> 854 41 65 0.5168279531
#> 855 41 70 1.2082938163
#> 856 41 75 1.5638930794
#> 857 41 80 1.9943065590
#> 858 41 85 1.9426037515
#> 859 41 90 1.8392650108
#> 860 41 95 1.4055312262
#> 861 41 100 1.0065137835
#> 862 42 0 0.9137355934
#> 863 42 5 0.5608790507
#> 864 42 10 -0.0102489045
#> 865 42 15 -0.5116017252
#> 866 42 20 -1.3092811297
#> 867 42 25 -1.8019680924
#> 868 42 30 -1.8388405199
#> 869 42 35 -2.3462459038
#> 870 42 40 -1.8559261618
#> 871 42 45 -1.6561984458
#> 872 42 50 -1.0190580197
#> 873 42 55 -0.4095178594
#> 874 42 60 0.3207937702
#> 875 42 65 0.5908752960
#> 876 42 70 1.3833431618
#> 877 42 75 1.5888642871
#> 878 42 80 1.8485772262
#> 879 42 85 2.3451610043
#> 880 42 90 1.9968394831
#> 881 42 95 1.6748266189
#> 882 42 100 1.1023286095
#> 883 43 0 1.0523482743
#> 884 43 5 0.4406784824
#> 885 43 10 -0.1989699552
#> 886 43 15 -0.4138430644
#> 887 43 20 -1.4184389622
#> 888 43 25 -1.5732265882
#> 889 43 30 -1.7820427440
#> 890 43 35 -1.7077238179
#> 891 43 40 -1.9382862295
#> 892 43 45 -1.6152081192
#> 893 43 50 -1.2196918894
#> 894 43 55 -0.4527668719
#> 895 43 60 0.0512488879
#> 896 43 65 0.7144475022
#> 897 43 70 1.1943530374
#> 898 43 75 1.9947482484
#> 899 43 80 1.8794545723
#> 900 43 85 1.6548625112
#> 901 43 90 1.7421306528
#> 902 43 95 1.5900392050
#> 903 43 100 1.1074298968
#> 904 44 0 1.4007428025
#> 905 44 5 0.5779111281
#> 906 44 10 -0.2363904647
#> 907 44 15 -0.6763137044
#> 908 44 20 -1.1709760084
#> 909 44 25 -1.7471796755
#> 910 44 30 -2.1088630980
#> 911 44 35 -2.0089538474
#> 912 44 40 -2.0914868668
#> 913 44 45 -1.5723431050
#> 914 44 50 -1.3662582804
#> 915 44 55 -0.6389884735
#> 916 44 60 0.1521561664
#> 917 44 65 0.5306408041
#> 918 44 70 1.4140324949
#> 919 44 75 1.3529843329
#> 920 44 80 1.9552319265
#> 921 44 85 1.9625474207
#> 922 44 90 1.7693294684
#> 923 44 95 1.6599714921
#> 924 44 100 0.7599583868
#> 925 45 0 0.9665176888
#> 926 45 5 0.3893284927
#> 927 45 10 -0.2281376137
#> 928 45 15 -0.8850583526
#> 929 45 20 -1.2007856217
#> 930 45 25 -1.6614898181
#> 931 45 30 -1.6915975219
#> 932 45 35 -2.1478259006
#> 933 45 40 -1.3451498679
#> 934 45 45 -1.3085517315
#> 935 45 50 -1.1947226111
#> 936 45 55 -0.5563629293
#> 937 45 60 -0.0535161318
#> 938 45 65 0.4813944670
#> 939 45 70 1.4983102556
#> 940 45 75 1.7760955819
#> 941 45 80 2.0433698808
#> 942 45 85 1.9250787412
#> 943 45 90 1.8452079283
#> 944 45 95 1.5063935381
#> 945 45 100 0.9487092162
#> 946 46 0 1.0111914703
#> 947 46 5 0.4109245110
#> 948 46 10 -0.0065903153
#> 949 46 15 -0.7513721290
#> 950 46 20 -1.3448625670
#> 951 46 25 -1.5899995367
#> 952 46 30 -1.7152843519
#> 953 46 35 -1.9816846710
#> 954 46 40 -1.8323294698
#> 955 46 45 -1.5201720601
#> 956 46 50 -1.0235810712
#> 957 46 55 -0.4606831095
#> 958 46 60 0.1732025453
#> 959 46 65 0.6316921539
#> 960 46 70 1.1913188304
#> 961 46 75 1.6190120714
#> 962 46 80 2.1913382927
#> 963 46 85 2.0457416162
#> 964 46 90 1.6483309597
#> 965 46 95 1.5930137934
#> 966 46 100 0.9365907423
#> 967 47 0 1.1144154734
#> 968 47 5 0.7056139649
#> 969 47 10 0.2112205066
#> 970 47 15 -0.4191792906
#> 971 47 20 -0.8483647336
#> 972 47 25 -1.5351827919
#> 973 47 30 -1.7379500309
#> 974 47 35 -2.0981371092
#> 975 47 40 -1.8757018970
#> 976 47 45 -1.6191752408
#> 977 47 50 -1.2144677708
#> 978 47 55 -0.4054401862
#> 979 47 60 0.3053508469
#> 980 47 65 0.7123835079
#> 981 47 70 1.6606006069
#> 982 47 75 1.8734666072
#> 983 47 80 1.9156560145
#> 984 47 85 1.7489660040
#> 985 47 90 1.7304804957
#> 986 47 95 1.4909759599
#> 987 47 100 1.1421056214
#> 988 48 0 0.9638961916
#> 989 48 5 0.6052744832
#> 990 48 10 -0.0817489640
#> 991 48 15 -0.7006840875
#> 992 48 20 -1.3887406377
#> 993 48 25 -1.6674884263
#> 994 48 30 -2.0680402960
#> 995 48 35 -2.0657868324
#> 996 48 40 -1.8419869127
#> 997 48 45 -1.6599518109
#> 998 48 50 -0.7924233885
#> 999 48 55 -0.3422795528
#> 1000 48 60 0.1402943457
#> 1001 48 65 0.7744425145
#> 1002 48 70 1.1465386764
#> 1003 48 75 1.6725923902
#> 1004 48 80 1.7654329390
#> 1005 48 85 2.0178720503
#> 1006 48 90 1.6858928593
#> 1007 48 95 1.5889985987
#> 1008 48 100 1.2955666153
#> 1009 49 0 1.0263890075
#> 1010 49 5 0.7989846268
#> 1011 49 10 -0.1596055090
#> 1012 49 15 -0.7352947599
#> 1013 49 20 -1.1613717556
#> 1014 49 25 -1.6672844455
#> 1015 49 30 -2.0492979976
#> 1016 49 35 -1.8081866689
#> 1017 49 40 -1.7624879347
#> 1018 49 45 -1.7848833128
#> 1019 49 50 -0.8245332763
#> 1020 49 55 -0.5900171321
#> 1021 49 60 -0.0254943392
#> 1022 49 65 0.8435457324
#> 1023 49 70 1.3372943533
#> 1024 49 75 1.5056090019
#> 1025 49 80 1.8679613812
#> 1026 49 85 1.8626621192
#> 1027 49 90 2.0024993689
#> 1028 49 95 1.6740638781
#> 1029 49 100 1.0284243658
#> 1030 50 0 1.0524457884
#> 1031 50 5 0.2968441999
#> 1032 50 10 -0.2701229931
#> 1033 50 15 -0.4624232592
#> 1034 50 20 -1.3849398686
#> 1035 50 25 -1.8826761848
#> 1036 50 30 -1.9134134239
#> 1037 50 35 -1.9508109729
#> 1038 50 40 -1.5736598054
#> 1039 50 45 -1.5968413708
#> 1040 50 50 -1.1978944631
#> 1041 50 55 -0.4012499145
#> 1042 50 60 0.2082800500
#> 1043 50 65 0.7764935343
#> 1044 50 70 1.3534676230
#> 1045 50 75 1.7674449570
#> 1046 50 80 1.9332196863
#> 1047 50 85 1.8547563563
#> 1048 50 90 1.8910655332
#> 1049 50 95 1.5372965357
#> 1050 50 100 0.9653467651
#> 1051 51 0 1.1171011004
#> 1052 51 5 0.5787067214
#> 1053 51 10 0.1263323411
#> 1054 51 15 -0.9231252348
#> 1055 51 20 -1.0708365981
#> 1056 51 25 -1.4149221708
#> 1057 51 30 -1.7869688769
#> 1058 51 35 -2.1264443072
#> 1059 51 40 -1.9433583767
#> 1060 51 45 -1.4485432163
#> 1061 51 50 -1.0629964812
#> 1062 51 55 -0.6412057320
#> 1063 51 60 0.1352207611
#> 1064 51 65 1.0226117429
#> 1065 51 70 1.2577713486
#> 1066 51 75 1.3690592773
#> 1067 51 80 1.7962857333
#> 1068 51 85 2.0665621418
#> 1069 51 90 1.9732078987
#> 1070 51 95 1.7073382363
#> 1071 51 100 1.1661215192
#> 1072 52 0 1.1334287452
#> 1073 52 5 0.5764342385
#> 1074 52 10 -0.1523169748
#> 1075 52 15 -0.8211777900
#> 1076 52 20 -1.2050501604
#> 1077 52 25 -1.7225450732
#> 1078 52 30 -1.8477077259
#> 1079 52 35 -1.9978518830
#> 1080 52 40 -2.0549366470
#> 1081 52 45 -1.6687149786
#> 1082 52 50 -1.0389562178
#> 1083 52 55 -0.5241234050
#> 1084 52 60 0.2228903906
#> 1085 52 65 0.4775483836
#> 1086 52 70 1.0988544231
#> 1087 52 75 1.5968392271
#> 1088 52 80 1.8685367098
#> 1089 52 85 1.7630733724
#> 1090 52 90 1.7636033275
#> 1091 52 95 1.3629899725
#> 1092 52 100 1.1612414044
#> 1093 53 0 0.9044633565
#> 1094 53 5 0.6961305111
#> 1095 53 10 0.0325460282
#> 1096 53 15 -0.5983622818
#> 1097 53 20 -1.0463776587
#> 1098 53 25 -2.0391828662
#> 1099 53 30 -2.0190000195
#> 1100 53 35 -2.1806199715
#> 1101 53 40 -1.7181605622
#> 1102 53 45 -1.5866884501
#> 1103 53 50 -1.0489426484
#> 1104 53 55 -0.5345370519
#> 1105 53 60 0.2963311542
#> 1106 53 65 0.8020264056
#> 1107 53 70 1.5012169347
#> 1108 53 75 1.6034416054
#> 1109 53 80 1.9530347892
#> 1110 53 85 1.9980991017
#> 1111 53 90 1.6087314965
#> 1112 53 95 1.6359235070
#> 1113 53 100 1.0373056018
#> 1114 54 0 1.1451312705
#> 1115 54 5 0.7162375537
#> 1116 54 10 -0.2472898397
#> 1117 54 15 -0.6553400481
#> 1118 54 20 -1.3430831603
#> 1119 54 25 -1.8074609655
#> 1120 54 30 -2.2432752950
#> 1121 54 35 -2.0250498032
#> 1122 54 40 -1.6210530114
#> 1123 54 45 -1.6644486281
#> 1124 54 50 -1.0409285535
#> 1125 54 55 -0.8082320411
#> 1126 54 60 0.2101963753
#> 1127 54 65 0.5917337114
#> 1128 54 70 1.0844551075
#> 1129 54 75 1.8087525988
#> 1130 54 80 1.8704255405
#> 1131 54 85 2.1671538022
#> 1132 54 90 1.8746381066
#> 1133 54 95 1.5621261150
#> 1134 54 100 1.2208359706
#> 1135 55 0 1.2127386211
#> 1136 55 5 0.5396252208
#> 1137 55 10 -0.1100524569
#> 1138 55 15 -1.0568059409
#> 1139 55 20 -1.3644503261
#> 1140 55 25 -1.6754839655
#> 1141 55 30 -2.0560427162
#> 1142 55 35 -2.3678170734
#> 1143 55 40 -1.8358394471
#> 1144 55 45 -1.2823693452
#> 1145 55 50 -0.8829614960
#> 1146 55 55 -0.6241890164
#> 1147 55 60 0.1255780368
#> 1148 55 65 0.9244393139
#> 1149 55 70 1.4709895373
#> 1150 55 75 1.8298512200
#> 1151 55 80 1.6956251775
#> 1152 55 85 2.1972516568
#> 1153 55 90 1.8267831787
#> 1154 55 95 1.3762592850
#> 1155 55 100 0.7265611939
#> 1156 56 0 1.1097810023
#> 1157 56 5 0.1555510151
#> 1158 56 10 -0.1836247837
#> 1159 56 15 -0.7844060189
#> 1160 56 20 -1.4514482595
#> 1161 56 25 -1.5988992430
#> 1162 56 30 -1.7563024355
#> 1163 56 35 -2.0737815846
#> 1164 56 40 -1.9281748826
#> 1165 56 45 -1.3207921489
#> 1166 56 50 -1.1668073654
#> 1167 56 55 -0.4422248181
#> 1168 56 60 0.0274348747
#> 1169 56 65 0.9338319936
#> 1170 56 70 1.1835784558
#> 1171 56 75 1.5110277131
#> 1172 56 80 1.8962280169
#> 1173 56 85 1.9707430632
#> 1174 56 90 2.0952668414
#> 1175 56 95 1.3452567427
#> 1176 56 100 1.1952813089
#> 1177 57 0 1.1711331681
#> 1178 57 5 0.2843823657
#> 1179 57 10 -0.1703246502
#> 1180 57 15 -0.6146542081
#> 1181 57 20 -1.5421941619
#> 1182 57 25 -1.6361887035
#> 1183 57 30 -1.9131399103
#> 1184 57 35 -2.1982922079
#> 1185 57 40 -1.8447711785
#> 1186 57 45 -1.6047273521
#> 1187 57 50 -0.6693022108
#> 1188 57 55 -0.5154545041
#> 1189 57 60 0.2078835609
#> 1190 57 65 0.7363800943
#> 1191 57 70 1.2084656847
#> 1192 57 75 1.7679070363
#> 1193 57 80 2.0195627083
#> 1194 57 85 1.9562317504
#> 1195 57 90 1.8740496210
#> 1196 57 95 1.5701730747
#> 1197 57 100 1.1364535699
#> 1198 58 0 0.8691629729
#> 1199 58 5 0.5849652962
#> 1200 58 10 -0.3049199199
#> 1201 58 15 -0.8219309467
#> 1202 58 20 -1.3127926460
#> 1203 58 25 -1.7306664693
#> 1204 58 30 -2.0902655142
#> 1205 58 35 -1.8333601132
#> 1206 58 40 -1.8191639147
#> 1207 58 45 -1.4832433351
#> 1208 58 50 -1.3180191319
#> 1209 58 55 -0.6569930489
#> 1210 58 60 0.1818500126
#> 1211 58 65 0.6853440281
#> 1212 58 70 1.2598684460
#> 1213 58 75 2.0455025613
#> 1214 58 80 1.7471207486
#> 1215 58 85 1.7336225186
#> 1216 58 90 1.6203868803
#> 1217 58 95 1.7967636441
#> 1218 58 100 1.2161811626
#> 1219 59 0 0.9255381065
#> 1220 59 5 0.6563726682
#> 1221 59 10 -0.0223610300
#> 1222 59 15 -0.6602422521
#> 1223 59 20 -1.2445471953
#> 1224 59 25 -1.7307980874
#> 1225 59 30 -1.9555905038
#> 1226 59 35 -1.8574590298
#> 1227 59 40 -1.8013793742
#> 1228 59 45 -1.6829746981
#> 1229 59 50 -1.0980883811
#> 1230 59 55 -0.1457920769
#> 1231 59 60 0.0505879425
#> 1232 59 65 0.7072076671
#> 1233 59 70 1.4138728393
#> 1234 59 75 1.7875188266
#> 1235 59 80 1.7594621771
#> 1236 59 85 1.9743047396
#> 1237 59 90 1.7868253850
#> 1238 59 95 1.5022126804
#> 1239 59 100 1.2183907894
#> 1240 60 0 1.0662472795
#> 1241 60 5 0.3230797535
#> 1242 60 10 -0.2084398179
#> 1243 60 15 -0.8851251471
#> 1244 60 20 -1.3937430089
#> 1245 60 25 -1.5072765309
#> 1246 60 30 -2.0200754326
#> 1247 60 35 -2.3292053785
#> 1248 60 40 -1.9204220577
#> 1249 60 45 -1.3506727425
#> 1250 60 50 -0.9541675823
#> 1251 60 55 -0.7693691074
#> 1252 60 60 0.1171814385
#> 1253 60 65 0.5322264407
#> 1254 60 70 1.1831413275
#> 1255 60 75 1.5229820199
#> 1256 60 80 1.8338582555
#> 1257 60 85 1.9237619985
#> 1258 60 90 1.8373418316
#> 1259 60 95 1.6568432129
#> 1260 60 100 0.9026708603
#> 1261 61 0 1.1786137411
#> 1262 61 5 0.3987619218
#> 1263 61 10 0.1321189235
#> 1264 61 15 -0.5191728880
#> 1265 61 20 -1.1151025235
#> 1266 61 25 -1.3943859069
#> 1267 61 30 -1.9289561070
#> 1268 61 35 -2.1491215297
#> 1269 61 40 -1.7258584519
#> 1270 61 45 -1.3435037511
#> 1271 61 50 -1.1740719465
#> 1272 61 55 -0.6421147796
#> 1273 61 60 0.2559357515
#> 1274 61 65 0.8513834482
#> 1275 61 70 1.1990775672
#> 1276 61 75 1.7097582677
#> 1277 61 80 2.0920906541
#> 1278 61 85 2.2922597878
#> 1279 61 90 2.1372576484
#> 1280 61 95 1.5906371331
#> 1281 61 100 1.3628552580
#> 1282 62 0 0.8573131881
#> 1283 62 5 0.7885271146
#> 1284 62 10 -0.1771056251
#> 1285 62 15 -1.1592875684
#> 1286 62 20 -1.4697864144
#> 1287 62 25 -1.3972493157
#> 1288 62 30 -1.9062563231
#> 1289 62 35 -1.9605023918
#> 1290 62 40 -2.0595040660
#> 1291 62 45 -1.4999785722
#> 1292 62 50 -0.6532930067
#> 1293 62 55 -0.4860008677
#> 1294 62 60 0.2045275381
#> 1295 62 65 0.4829379566
#> 1296 62 70 1.2175265479
#> 1297 62 75 1.6700443395
#> 1298 62 80 2.1916927383
#> 1299 62 85 1.9339252576
#> 1300 62 90 1.8007234042
#> 1301 62 95 1.3385925776
#> 1302 62 100 1.0975912333
#> 1303 63 0 1.2198690146
#> 1304 63 5 0.7347686363
#> 1305 63 10 -0.3613326369
#> 1306 63 15 -0.8794034472
#> 1307 63 20 -1.4626712440
#> 1308 63 25 -1.4567768104
#> 1309 63 30 -1.6877186392
#> 1310 63 35 -2.0319492425
#> 1311 63 40 -2.0223470854
#> 1312 63 45 -1.5514617782
#> 1313 63 50 -0.9883048704
#> 1314 63 55 -0.4002748535
#> 1315 63 60 -0.0009051857
#> 1316 63 65 0.7393446312
#> 1317 63 70 1.3625154007
#> 1318 63 75 1.7066571758
#> 1319 63 80 1.9875716890
#> 1320 63 85 2.1155348113
#> 1321 63 90 2.0791395697
#> 1322 63 95 1.4433785186
#> 1323 63 100 1.2174709583
#> 1324 64 0 1.1262207067
#> 1325 64 5 0.6223886333
#> 1326 64 10 -0.0695764189
#> 1327 64 15 -0.4996595323
#> 1328 64 20 -1.4131787798
#> 1329 64 25 -1.5734316759
#> 1330 64 30 -2.0236697384
#> 1331 64 35 -2.0075261272
#> 1332 64 40 -1.8604545977
#> 1333 64 45 -1.6604630965
#> 1334 64 50 -0.8307409262
#> 1335 64 55 -0.5967078671
#> 1336 64 60 0.0047509693
#> 1337 64 65 0.5313611975
#> 1338 64 70 1.3212317189
#> 1339 64 75 1.9285991899
#> 1340 64 80 2.0152239121
#> 1341 64 85 1.9607776174
#> 1342 64 90 1.8435229601
#> 1343 64 95 1.6773509231
#> 1344 64 100 1.1285799459
#> 1345 65 0 1.1911889057
#> 1346 65 5 0.2308000532
#> 1347 65 10 -0.2704882311
#> 1348 65 15 -0.6722374635
#> 1349 65 20 -1.3028299644
#> 1350 65 25 -1.5138713160
#> 1351 65 30 -2.0277559790
#> 1352 65 35 -2.2135075150
#> 1353 65 40 -2.0070499048
#> 1354 65 45 -1.6708244307
#> 1355 65 50 -1.3018737809
#> 1356 65 55 -0.4904575259
#> 1357 65 60 0.2167999570
#> 1358 65 65 0.5596651888
#> 1359 65 70 1.1494443374
#> 1360 65 75 1.8234775081
#> 1361 65 80 2.0962594692
#> 1362 65 85 1.8497325134
#> 1363 65 90 1.8135503423
#> 1364 65 95 1.4746916410
#> 1365 65 100 0.9477320215
#> 1366 66 0 0.8994697027
#> 1367 66 5 0.5839003143
#> 1368 66 10 -0.4045147819
#> 1369 66 15 -0.5647742657
#> 1370 66 20 -1.3040400492
#> 1371 66 25 -1.6426331111
#> 1372 66 30 -1.8004064400
#> 1373 66 35 -2.1561344947
#> 1374 66 40 -1.9787129450
#> 1375 66 45 -1.4384163315
#> 1376 66 50 -1.2028854740
#> 1377 66 55 -0.6215584837
#> 1378 66 60 -0.0412501854
#> 1379 66 65 0.7930918025
#> 1380 66 70 1.3235896433
#> 1381 66 75 1.6288667489
#> 1382 66 80 2.0730100118
#> 1383 66 85 1.9247080041
#> 1384 66 90 1.9688488156
#> 1385 66 95 1.7728787117
#> 1386 66 100 1.0391797564
#> 1387 67 0 0.9209177255
#> 1388 67 5 0.4934392430
#> 1389 67 10 0.0453111627
#> 1390 67 15 -0.8299539811
#> 1391 67 20 -1.2132520622
#> 1392 67 25 -1.8635992417
#> 1393 67 30 -1.8292375924
#> 1394 67 35 -2.0483515802
#> 1395 67 40 -1.7274714030
#> 1396 67 45 -1.5348883840
#> 1397 67 50 -1.1047928783
#> 1398 67 55 -0.4941477180
#> 1399 67 60 0.0395167039
#> 1400 67 65 0.8575141697
#> 1401 67 70 1.4241474592
#> 1402 67 75 1.8107503884
#> 1403 67 80 1.8287802228
#> 1404 67 85 2.1032145939
#> 1405 67 90 1.8397390465
#> 1406 67 95 1.5875227560
#> 1407 67 100 1.3400557435
#> 1408 68 0 1.2321048236
#> 1409 68 5 0.6006941484
#> 1410 68 10 -0.0123792049
#> 1411 68 15 -0.8606402490
#> 1412 68 20 -1.3806803089
#> 1413 68 25 -1.3917316306
#> 1414 68 30 -2.1412454167
#> 1415 68 35 -2.1305397249
#> 1416 68 40 -1.9003943321
#> 1417 68 45 -1.8037531700
#> 1418 68 50 -1.1166651600
#> 1419 68 55 -0.5821732415
#> 1420 68 60 0.0252997966
#> 1421 68 65 0.6596247450
#> 1422 68 70 1.4240697715
#> 1423 68 75 1.6140048057
#> 1424 68 80 2.2294648511
#> 1425 68 85 2.0131729502
#> 1426 68 90 1.7744666512
#> 1427 68 95 1.5164240450
#> 1428 68 100 1.2234604395
#> 1429 69 0 0.9501095863
#> 1430 69 5 0.4727815153
#> 1431 69 10 0.0031314084
#> 1432 69 15 -0.8285080519
#> 1433 69 20 -1.3935076456
#> 1434 69 25 -1.8112527485
#> 1435 69 30 -2.0242655383
#> 1436 69 35 -1.8748973171
#> 1437 69 40 -1.9928841151
#> 1438 69 45 -1.7515961559
#> 1439 69 50 -0.9327701476
#> 1440 69 55 -0.3880633187
#> 1441 69 60 0.2998535787
#> 1442 69 65 0.8270994447
#> 1443 69 70 1.3389002271
#> 1444 69 75 1.6922160693
#> 1445 69 80 2.2932050172
#> 1446 69 85 2.0939073502
#> 1447 69 90 2.0206731546
#> 1448 69 95 1.0652850072
#> 1449 69 100 1.0398977226
#> 1450 70 0 1.1091869800
#> 1451 70 5 0.3126446472
#> 1452 70 10 -0.0760213025
#> 1453 70 15 -0.5461544023
#> 1454 70 20 -1.0150368296
#> 1455 70 25 -1.7595013153
#> 1456 70 30 -1.6696148927
#> 1457 70 35 -2.0105044942
#> 1458 70 40 -1.7478933707
#> 1459 70 45 -1.5532996763
#> 1460 70 50 -0.8980594944
#> 1461 70 55 -0.8120923983
#> 1462 70 60 0.3051071982
#> 1463 70 65 0.6749799461
#> 1464 70 70 1.1857602878
#> 1465 70 75 1.5261469286
#> 1466 70 80 2.1537566976
#> 1467 70 85 1.9563520200
#> 1468 70 90 2.0275666396
#> 1469 70 95 1.6487616848
#> 1470 70 100 1.2063898734
#> 1471 71 0 1.2647833188
#> 1472 71 5 0.6358888290
#> 1473 71 10 -0.0097882006
#> 1474 71 15 -0.7793410879
#> 1475 71 20 -1.3722432716
#> 1476 71 25 -1.6964606994
#> 1477 71 30 -1.6584303347
#> 1478 71 35 -1.9584247780
#> 1479 71 40 -1.7312189742
#> 1480 71 45 -1.5769045044
#> 1481 71 50 -1.0735619924
#> 1482 71 55 -0.3774627009
#> 1483 71 60 -0.0231506158
#> 1484 71 65 1.0420838204
#> 1485 71 70 1.2697679465
#> 1486 71 75 1.6989402589
#> 1487 71 80 2.0503903738
#> 1488 71 85 2.1877961095
#> 1489 71 90 1.8847078802
#> 1490 71 95 1.2420853769
#> 1491 71 100 1.1268937481
#> 1492 72 0 1.0929497359
#> 1493 72 5 0.4074174981
#> 1494 72 10 -0.0618886252
#> 1495 72 15 -0.6580006605
#> 1496 72 20 -1.2765319593
#> 1497 72 25 -1.6543577832
#> 1498 72 30 -2.0182323420
#> 1499 72 35 -1.9352415023
#> 1500 72 40 -1.5834457360
#> 1501 72 45 -1.6698970238
#> 1502 72 50 -0.8680281803
#> 1503 72 55 -0.3917179316
#> 1504 72 60 0.1326454006
#> 1505 72 65 0.7381901091
#> 1506 72 70 1.1575560613
#> 1507 72 75 1.3974279645
#> 1508 72 80 1.7009637111
#> 1509 72 85 1.7823885832
#> 1510 72 90 1.7308945124
#> 1511 72 95 1.4778440544
#> 1512 72 100 1.3605652232
#> 1513 73 0 1.3027422465
#> 1514 73 5 0.5315874907
#> 1515 73 10 -0.4179821905
#> 1516 73 15 -0.6475033613
#> 1517 73 20 -1.3339061404
#> 1518 73 25 -1.5588746521
#> 1519 73 30 -2.0324304241
#> 1520 73 35 -1.9925204811
#> 1521 73 40 -1.5785156064
#> 1522 73 45 -1.3500426837
#> 1523 73 50 -1.3259637768
#> 1524 73 55 -0.4393106146
#> 1525 73 60 0.2795315972
#> 1526 73 65 0.6949707462
#> 1527 73 70 1.2074664180
#> 1528 73 75 1.5605875448
#> 1529 73 80 1.7442505610
#> 1530 73 85 2.1716451975
#> 1531 73 90 1.6891580891
#> 1532 73 95 1.4670161200
#> 1533 73 100 1.4164848153
#> 1534 74 0 1.0257570664
#> 1535 74 5 0.5480972549
#> 1536 74 10 0.1543657333
#> 1537 74 15 -0.9137512761
#> 1538 74 20 -1.4311909336
#> 1539 74 25 -1.8963949191
#> 1540 74 30 -2.1663573774
#> 1541 74 35 -2.3844264355
#> 1542 74 40 -1.7120785392
#> 1543 74 45 -1.4303255659
#> 1544 74 50 -0.9673931115
#> 1545 74 55 -0.6259203881
#> 1546 74 60 0.1356639262
#> 1547 74 65 0.7743409133
#> 1548 74 70 1.1865575370
#> 1549 74 75 1.6358988047
#> 1550 74 80 2.1790826703
#> 1551 74 85 1.9892233788
#> 1552 74 90 1.9014061436
#> 1553 74 95 1.4625409727
#> 1554 74 100 1.2561327401
#> 1555 75 0 0.8035685816
#> 1556 75 5 0.4208788218
#> 1557 75 10 -0.2192115411
#> 1558 75 15 -0.7570079791
#> 1559 75 20 -1.3348238819
#> 1560 75 25 -1.6179801444
#> 1561 75 30 -1.9971366648
#> 1562 75 35 -2.2646255970
#> 1563 75 40 -2.0024770344
#> 1564 75 45 -1.1823288550
#> 1565 75 50 -1.2319332330
#> 1566 75 55 -0.5204885648
#> 1567 75 60 0.3864958939
#> 1568 75 65 0.5548637269
#> 1569 75 70 1.1153747366
#> 1570 75 75 1.6066390221
#> 1571 75 80 1.9146808747
#> 1572 75 85 1.7427775804
#> 1573 75 90 1.8308195673
#> 1574 75 95 1.5776051902
#> 1575 75 100 1.2646231780
#> 1576 76 0 0.9603517223
#> 1577 76 5 0.5883796481
#> 1578 76 10 -0.1126686364
#> 1579 76 15 -0.5574772638
#> 1580 76 20 -0.9401409122
#> 1581 76 25 -1.8270047213
#> 1582 76 30 -1.8145594347
#> 1583 76 35 -2.0215622953
#> 1584 76 40 -1.9968512645
#> 1585 76 45 -1.5964999754
#> 1586 76 50 -1.2732530502
#> 1587 76 55 -0.3711537309
#> 1588 76 60 -0.2279804376
#> 1589 76 65 0.4048220853
#> 1590 76 70 1.3272389829
#> 1591 76 75 1.8477328945
#> 1592 76 80 2.0426906832
#> 1593 76 85 1.9463185203
#> 1594 76 90 1.7109924699
#> 1595 76 95 1.5124467821
#> 1596 76 100 1.0883946386
#> 1597 77 0 1.0077823038
#> 1598 77 5 0.3987343413
#> 1599 77 10 -0.2275907489
#> 1600 77 15 -0.9029967012
#> 1601 77 20 -1.4984881342
#> 1602 77 25 -1.6508727545
#> 1603 77 30 -1.6554040678
#> 1604 77 35 -2.1146425955
#> 1605 77 40 -1.8393968900
#> 1606 77 45 -1.6752613955
#> 1607 77 50 -0.9636150700
#> 1608 77 55 -0.4879000016
#> 1609 77 60 0.2305009295
#> 1610 77 65 0.7065760288
#> 1611 77 70 1.2252856413
#> 1612 77 75 1.5018236098
#> 1613 77 80 1.8509206577
#> 1614 77 85 1.7278748501
#> 1615 77 90 2.1405119407
#> 1616 77 95 1.5669167206
#> 1617 77 100 1.2604517150
#> 1618 78 0 1.0572929563
#> 1619 78 5 0.2469599232
#> 1620 78 10 -0.0411264569
#> 1621 78 15 -0.9497048926
#> 1622 78 20 -1.8434457629
#> 1623 78 25 -1.8446360425
#> 1624 78 30 -1.8693009758
#> 1625 78 35 -2.3119413558
#> 1626 78 40 -1.9449184207
#> 1627 78 45 -1.3803330259
#> 1628 78 50 -1.0691081133
#> 1629 78 55 -0.4522516047
#> 1630 78 60 0.2606790337
#> 1631 78 65 0.8747970473
#> 1632 78 70 1.4376177182
#> 1633 78 75 1.7489372482
#> 1634 78 80 2.1217418801
#> 1635 78 85 1.7361751946
#> 1636 78 90 1.6689496399
#> 1637 78 95 1.5877946078
#> 1638 78 100 1.0263816423
#> 1639 79 0 1.1821411671
#> 1640 79 5 0.5179510344
#> 1641 79 10 -0.0588705400
#> 1642 79 15 -0.4010704556
#> 1643 79 20 -1.0972100633
#> 1644 79 25 -1.7981928311
#> 1645 79 30 -1.9501028362
#> 1646 79 35 -2.1610658077
#> 1647 79 40 -1.9784415811
#> 1648 79 45 -1.4711775771
#> 1649 79 50 -1.2037218122
#> 1650 79 55 -0.5936066211
#> 1651 79 60 0.2295897962
#> 1652 79 65 0.7434561395
#> 1653 79 70 1.1001771899
#> 1654 79 75 1.7330380420
#> 1655 79 80 2.0626953438
#> 1656 79 85 1.8538497427
#> 1657 79 90 1.5828052849
#> 1658 79 95 1.5783241042
#> 1659 79 100 1.0286147988
#> 1660 80 0 1.1969318481
#> 1661 80 5 0.2594358794
#> 1662 80 10 0.0920970332
#> 1663 80 15 -0.6569782468
#> 1664 80 20 -1.0607211499
#> 1665 80 25 -1.9361520922
#> 1666 80 30 -1.6558195554
#> 1667 80 35 -2.2837590214
#> 1668 80 40 -1.7024691782
#> 1669 80 45 -1.4948891911
#> 1670 80 50 -1.0713676878
#> 1671 80 55 -0.5999484196
#> 1672 80 60 0.0573813551
#> 1673 80 65 0.8952346936
#> 1674 80 70 1.1449582445
#> 1675 80 75 1.5621674500
#> 1676 80 80 1.8982565406
#> 1677 80 85 2.0534220982
#> 1678 80 90 1.9942954653
#> 1679 80 95 1.3146439699
#> 1680 80 100 1.1543351823
#> 1681 81 0 1.0273806386
#> 1682 81 5 0.5555273941
#> 1683 81 10 0.0464987391
#> 1684 81 15 -0.7394319212
#> 1685 81 20 -1.3423572917
#> 1686 81 25 -1.9866288856
#> 1687 81 30 -1.7995231433
#> 1688 81 35 -1.9493729598
#> 1689 81 40 -2.0509925462
#> 1690 81 45 -1.1402672801
#> 1691 81 50 -1.0220548724
#> 1692 81 55 -0.6387352413
#> 1693 81 60 -0.0019497536
#> 1694 81 65 1.0533157555
#> 1695 81 70 1.3594904616
#> 1696 81 75 1.5266479263
#> 1697 81 80 1.7795201595
#> 1698 81 85 1.9897375882
#> 1699 81 90 1.8954005046
#> 1700 81 95 1.3087207115
#> 1701 81 100 1.0787840500
#> 1702 82 0 1.3343989934
#> 1703 82 5 0.3417780445
#> 1704 82 10 -0.0006179739
#> 1705 82 15 -0.5495809049
#> 1706 82 20 -1.2003396355
#> 1707 82 25 -1.6966652183
#> 1708 82 30 -1.9527410634
#> 1709 82 35 -2.1202034323
#> 1710 82 40 -1.9130672487
#> 1711 82 45 -1.5834608455
#> 1712 82 50 -1.1767910249
#> 1713 82 55 -0.4410483504
#> 1714 82 60 -0.0826427858
#> 1715 82 65 0.4994731144
#> 1716 82 70 1.2834525424
#> 1717 82 75 1.8515429529
#> 1718 82 80 2.0220459437
#> 1719 82 85 2.0683142553
#> 1720 82 90 1.7014612956
#> 1721 82 95 1.5571302635
#> 1722 82 100 1.3953320873
#> 1723 83 0 1.0671814223
#> 1724 83 5 0.4728575795
#> 1725 83 10 -0.0325672461
#> 1726 83 15 -0.8470077628
#> 1727 83 20 -1.2743205390
#> 1728 83 25 -1.7615243690
#> 1729 83 30 -1.8250997040
#> 1730 83 35 -1.9140950374
#> 1731 83 40 -1.8902562533
#> 1732 83 45 -1.2632348405
#> 1733 83 50 -0.8616880378
#> 1734 83 55 -0.4280315536
#> 1735 83 60 0.1550099770
#> 1736 83 65 0.8002093150
#> 1737 83 70 1.3464181534
#> 1738 83 75 1.8492243504
#> 1739 83 80 2.0830110296
#> 1740 83 85 2.3071395336
#> 1741 83 90 1.8505898188
#> 1742 83 95 1.6151102290
#> 1743 83 100 0.8010706792
#> 1744 84 0 1.0988480082
#> 1745 84 5 0.4339581490
#> 1746 84 10 -0.0059122833
#> 1747 84 15 -0.6534855205
#> 1748 84 20 -1.0848055855
#> 1749 84 25 -1.6999469030
#> 1750 84 30 -1.9299642632
#> 1751 84 35 -2.1619259327
#> 1752 84 40 -1.7539055096
#> 1753 84 45 -1.6133781840
#> 1754 84 50 -0.9828356700
#> 1755 84 55 -0.6125236438
#> 1756 84 60 0.0748538222
#> 1757 84 65 0.7189280701
#> 1758 84 70 1.4300964997
#> 1759 84 75 1.5854890416
#> 1760 84 80 2.1328030381
#> 1761 84 85 1.8429224635
#> 1762 84 90 1.8869959580
#> 1763 84 95 1.3888179254
#> 1764 84 100 0.9957114746
#> 1765 85 0 0.9867572112
#> 1766 85 5 0.4414084310
#> 1767 85 10 -0.1511860160
#> 1768 85 15 -0.5382109413
#> 1769 85 20 -1.3184815741
#> 1770 85 25 -1.8310265867
#> 1771 85 30 -1.9181449494
#> 1772 85 35 -1.9230703705
#> 1773 85 40 -1.7582895350
#> 1774 85 45 -1.6474058045
#> 1775 85 50 -0.9919717369
#> 1776 85 55 -0.5090282879
#> 1777 85 60 0.3590004212
#> 1778 85 65 0.5528024839
#> 1779 85 70 1.4543655903
#> 1780 85 75 1.6824812474
#> 1781 85 80 2.0793847264
#> 1782 85 85 1.9568461298
#> 1783 85 90 1.8684507759
#> 1784 85 95 1.9323259862
#> 1785 85 100 1.1119841156
#> 1786 86 0 1.0854224515
#> 1787 86 5 0.7691810759
#> 1788 86 10 -0.1303952451
#> 1789 86 15 -0.8434348381
#> 1790 86 20 -1.3837227155
#> 1791 86 25 -1.5023882444
#> 1792 86 30 -1.8369138106
#> 1793 86 35 -2.1756645182
#> 1794 86 40 -2.0936401720
#> 1795 86 45 -1.5759720383
#> 1796 86 50 -1.1624472165
#> 1797 86 55 -0.6752078619
#> 1798 86 60 0.0062073300
#> 1799 86 65 0.7069760367
#> 1800 86 70 1.2611460139
#> 1801 86 75 1.6936216647
#> 1802 86 80 1.8804584542
#> 1803 86 85 2.2125636226
#> 1804 86 90 1.7802663197
#> 1805 86 95 1.9671965589
#> 1806 86 100 1.0881507951
#> 1807 87 0 0.9682010000
#> 1808 87 5 0.6256374259
#> 1809 87 10 -0.2104413492
#> 1810 87 15 -0.6215795540
#> 1811 87 20 -1.1606519672
#> 1812 87 25 -1.9262050715
#> 1813 87 30 -1.7075500651
#> 1814 87 35 -2.0728314385
#> 1815 87 40 -1.8671984500
#> 1816 87 45 -1.6275894391
#> 1817 87 50 -1.3263711635
#> 1818 87 55 -0.2650990994
#> 1819 87 60 0.0257848609
#> 1820 87 65 0.9311073355
#> 1821 87 70 1.3158664893
#> 1822 87 75 1.9101223241
#> 1823 87 80 1.9187079566
#> 1824 87 85 2.1235168110
#> 1825 87 90 1.8436506227
#> 1826 87 95 1.6901633718
#> 1827 87 100 1.2519519205
#> 1828 88 0 1.0674850442
#> 1829 88 5 0.5481308252
#> 1830 88 10 -0.3688368907
#> 1831 88 15 -0.9448425576
#> 1832 88 20 -1.3195945122
#> 1833 88 25 -1.8749041713
#> 1834 88 30 -1.9381448087
#> 1835 88 35 -2.0407844036
#> 1836 88 40 -2.0307479525
#> 1837 88 45 -1.2436891127
#> 1838 88 50 -1.1753370232
#> 1839 88 55 -0.6154760902
#> 1840 88 60 -0.0219206204
#> 1841 88 65 0.7336482174
#> 1842 88 70 1.3358584010
#> 1843 88 75 1.7293293211
#> 1844 88 80 1.9504810370
#> 1845 88 85 2.4063762478
#> 1846 88 90 1.9132694718
#> 1847 88 95 1.5813889232
#> 1848 88 100 1.1722411865
#> 1849 89 0 1.0081391630
#> 1850 89 5 0.6916586620
#> 1851 89 10 -0.0774676084
#> 1852 89 15 -0.7513507883
#> 1853 89 20 -1.4160033237
#> 1854 89 25 -1.6036443355
#> 1855 89 30 -2.1298524345
#> 1856 89 35 -1.9820489840
#> 1857 89 40 -1.8673732496
#> 1858 89 45 -1.5052849952
#> 1859 89 50 -1.1696429910
#> 1860 89 55 -0.8686521948
#> 1861 89 60 0.1338065021
#> 1862 89 65 0.4779418321
#> 1863 89 70 0.9329689562
#> 1864 89 75 1.6658025091
#> 1865 89 80 1.9364756858
#> 1866 89 85 1.8842724253
#> 1867 89 90 1.5157021471
#> 1868 89 95 1.5552494362
#> 1869 89 100 1.0813193505
#> 1870 90 0 1.0483525423
#> 1871 90 5 0.5448200646
#> 1872 90 10 -0.1340001714
#> 1873 90 15 -0.6456680838
#> 1874 90 20 -1.1595077673
#> 1875 90 25 -1.3775320475
#> 1876 90 30 -1.7109503136
#> 1877 90 35 -2.3821851695
#> 1878 90 40 -1.9921557228
#> 1879 90 45 -1.5203222747
#> 1880 90 50 -0.9092334709
#> 1881 90 55 -0.6165016540
#> 1882 90 60 0.0124738978
#> 1883 90 65 0.4994469061
#> 1884 90 70 1.2273511323
#> 1885 90 75 1.6310632184
#> 1886 90 80 1.9144070027
#> 1887 90 85 1.9847308819
#> 1888 90 90 1.8991977740
#> 1889 90 95 1.1848686863
#> 1890 90 100 0.9877279281
#> 1891 91 0 0.9921949119
#> 1892 91 5 0.6042874577
#> 1893 91 10 -0.2786373826
#> 1894 91 15 -0.5957755462
#> 1895 91 20 -1.4975064045
#> 1896 91 25 -1.7894424992
#> 1897 91 30 -2.0099732995
#> 1898 91 35 -2.0206880493
#> 1899 91 40 -1.9979910267
#> 1900 91 45 -1.6664485063
#> 1901 91 50 -1.0124140509
#> 1902 91 55 -0.5292427257
#> 1903 91 60 0.0126923076
#> 1904 91 65 0.9374432799
#> 1905 91 70 0.8767186272
#> 1906 91 75 1.5604641735
#> 1907 91 80 1.9122489049
#> 1908 91 85 2.0550282137
#> 1909 91 90 1.8086666372
#> 1910 91 95 1.7308653187
#> 1911 91 100 1.1097751470
#> 1912 92 0 1.1092239579
#> 1913 92 5 0.5831885689
#> 1914 92 10 -0.3253022664
#> 1915 92 15 -0.6634641848
#> 1916 92 20 -1.1873928535
#> 1917 92 25 -1.7970771362
#> 1918 92 30 -2.2410696788
#> 1919 92 35 -2.0788247576
#> 1920 92 40 -1.7939281280
#> 1921 92 45 -1.4528338593
#> 1922 92 50 -1.0908272682
#> 1923 92 55 -0.6109352436
#> 1924 92 60 0.1405762906
#> 1925 92 65 0.8825858558
#> 1926 92 70 1.2399016056
#> 1927 92 75 1.7722573250
#> 1928 92 80 1.8351873357
#> 1929 92 85 2.1854719749
#> 1930 92 90 2.1543966970
#> 1931 92 95 1.4758534785
#> 1932 92 100 1.0500987342
#> 1933 93 0 1.3514536814
#> 1934 93 5 0.2771297979
#> 1935 93 10 -0.1302929793
#> 1936 93 15 -0.8900629214
#> 1937 93 20 -1.5366518902
#> 1938 93 25 -1.3918208308
#> 1939 93 30 -1.8869571631
#> 1940 93 35 -1.9749473377
#> 1941 93 40 -1.7831725341
#> 1942 93 45 -1.5863619019
#> 1943 93 50 -1.2113675589
#> 1944 93 55 -0.4669642946
#> 1945 93 60 0.1112157961
#> 1946 93 65 0.6299134313
#> 1947 93 70 1.3970443260
#> 1948 93 75 1.7059071496
#> 1949 93 80 1.9062861120
#> 1950 93 85 1.9350369464
#> 1951 93 90 1.9604615923
#> 1952 93 95 1.7458690164
#> 1953 93 100 1.0545107534
#> 1954 94 0 1.1831944808
#> 1955 94 5 0.3676721990
#> 1956 94 10 0.1420782687
#> 1957 94 15 -0.8347190057
#> 1958 94 20 -1.2819826168
#> 1959 94 25 -1.4321359178
#> 1960 94 30 -2.0375416826
#> 1961 94 35 -2.0284234698
#> 1962 94 40 -2.0769722512
#> 1963 94 45 -1.6274058064
#> 1964 94 50 -1.1001804921
#> 1965 94 55 -0.2878290811
#> 1966 94 60 -0.2278238932
#> 1967 94 65 0.5313312064
#> 1968 94 70 1.1821757849
#> 1969 94 75 1.7069561107
#> 1970 94 80 2.0031771338
#> 1971 94 85 2.1639405308
#> 1972 94 90 1.9656377548
#> 1973 94 95 1.4744891565
#> 1974 94 100 1.2305892548
#> 1975 95 0 1.1636092986
#> 1976 95 5 0.3164202746
#> 1977 95 10 -0.1466510632
#> 1978 95 15 -0.4824516861
#> 1979 95 20 -1.0694085761
#> 1980 95 25 -1.7518591094
#> 1981 95 30 -2.1074945012
#> 1982 95 35 -2.1068905913
#> 1983 95 40 -1.6555545677
#> 1984 95 45 -1.6765900017
#> 1985 95 50 -0.9856287959
#> 1986 95 55 -0.2646908484
#> 1987 95 60 0.0252296195
#> 1988 95 65 0.4918614750
#> 1989 95 70 1.0865840685
#> 1990 95 75 1.7108482965
#> 1991 95 80 1.9435224653
#> 1992 95 85 1.9955157852
#> 1993 95 90 1.9277938328
#> 1994 95 95 1.2325008316
#> 1995 95 100 1.2981492554
#> 1996 96 0 1.0393793988
#> 1997 96 5 0.3360586914
#> 1998 96 10 0.2320713846
#> 1999 96 15 -0.8392346802
#> 2000 96 20 -1.5446749306
#> 2001 96 25 -1.5277646519
#> 2002 96 30 -2.1125780809
#> 2003 96 35 -1.9054329137
#> 2004 96 40 -1.7274091582
#> 2005 96 45 -1.8208910903
#> 2006 96 50 -1.2286412552
#> 2007 96 55 -0.6226267694
#> 2008 96 60 0.0089212983
#> 2009 96 65 1.0852016533
#> 2010 96 70 1.2489766647
#> 2011 96 75 1.4743936614
#> 2012 96 80 1.7271483539
#> 2013 96 85 1.9543513345
#> 2014 96 90 1.8824441730
#> 2015 96 95 1.3453143513
#> 2016 96 100 1.0373231914
#> 2017 97 0 1.3633336097
#> 2018 97 5 0.4052424102
#> 2019 97 10 -0.2954159945
#> 2020 97 15 -0.9171959282
#> 2021 97 20 -1.2502807798
#> 2022 97 25 -1.9279304487
#> 2023 97 30 -2.0118762218
#> 2024 97 35 -1.9770206826
#> 2025 97 40 -2.0192569381
#> 2026 97 45 -1.6213295397
#> 2027 97 50 -1.0137613267
#> 2028 97 55 -0.2993252663
#> 2029 97 60 0.0600768817
#> 2030 97 65 0.7122201307
#> 2031 97 70 1.3063327133
#> 2032 97 75 1.6356296881
#> 2033 97 80 1.9246810242
#> 2034 97 85 2.1286986310
#> 2035 97 90 1.8698308612
#> 2036 97 95 1.5646597004
#> 2037 97 100 1.1981534890
#> 2038 98 0 1.0816591601
#> 2039 98 5 0.5551979550
#> 2040 98 10 -0.0304407647
#> 2041 98 15 -0.5818339142
#> 2042 98 20 -1.2514536747
#> 2043 98 25 -1.4971334774
#> 2044 98 30 -2.0836342607
#> 2045 98 35 -1.9812021828
#> 2046 98 40 -1.9439519235
#> 2047 98 45 -1.4369176308
#> 2048 98 50 -1.1690504443
#> 2049 98 55 -0.6043970143
#> 2050 98 60 0.1487444872
#> 2051 98 65 0.6816098231
#> 2052 98 70 1.0217672993
#> 2053 98 75 1.5772613452
#> 2054 98 80 2.0942376043
#> 2055 98 85 1.9955945970
#> 2056 98 90 1.7919549904
#> 2057 98 95 1.6174364997
#> 2058 98 100 1.2790108783
#> 2059 99 0 1.0584272408
#> 2060 99 5 0.4932045870
#> 2061 99 10 -0.3280718800
#> 2062 99 15 -0.8897639007
#> 2063 99 20 -1.4663989445
#> 2064 99 25 -1.6360091076
#> 2065 99 30 -1.8131498991
#> 2066 99 35 -2.1379219321
#> 2067 99 40 -1.7733229307
#> 2068 99 45 -1.6035504712
#> 2069 99 50 -1.0252689985
#> 2070 99 55 -0.4589940176
#> 2071 99 60 -0.0454230550
#> 2072 99 65 0.8845501267
#> 2073 99 70 1.4257391765
#> 2074 99 75 1.6029707592
#> 2075 99 80 1.9443142210
#> 2076 99 85 1.8978744326
#> 2077 99 90 2.2082011032
#> 2078 99 95 1.4857033217
#> 2079 99 100 1.2302939591
#> 2080 100 0 1.0419876847
#> 2081 100 5 0.5514407363
#> 2082 100 10 -0.0428374503
#> 2083 100 15 -0.6527186146
#> 2084 100 20 -1.0963691263
#> 2085 100 25 -1.4532470660
#> 2086 100 30 -1.9515669907
#> 2087 100 35 -2.0183386128
#> 2088 100 40 -2.0658645588
#> 2089 100 45 -1.5986642771
#> 2090 100 50 -1.0937385183
#> 2091 100 55 -0.5878865454
#> 2092 100 60 0.0520201140
#> 2093 100 65 0.7630773304
#> 2094 100 70 1.3992468335
#> 2095 100 75 1.4944830189
#> 2096 100 80 1.8401948997
#> 2097 100 85 1.9987338761
#> 2098 100 90 1.9023847932
#> 2099 100 95 1.5463361966
#> 2100 100 100 1.2067560848convert_to_wide_format
df_wide = convert_to_wide_format(df_regul)
df_wide
#> # A tibble: 100 × 22
#> id `0` `5` `10` `15` `20` `25` `30` `35` `40` `45` `50`
#> <int> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 1 1.26 0.535 0.264 -0.603 -1.32 -1.86 -2.02 -2.48 -1.74 -1.49 -0.827
#> 2 2 0.938 0.646 -0.0371 -0.880 -0.990 -1.69 -2.24 -2.21 -2.10 -1.74 -1.10
#> 3 3 1.08 0.438 0.291 -0.872 -1.50 -1.83 -1.83 -1.92 -1.78 -1.76 -1.12
#> 4 4 1.39 0.455 0.0217 -0.805 -1.27 -1.63 -1.95 -2.00 -1.89 -1.68 -0.695
#> 5 5 1.44 0.595 -0.291 -0.641 -1.28 -1.67 -2.09 -1.98 -1.83 -1.52 -0.921
#> 6 6 0.988 0.480 0.0522 -0.810 -0.975 -1.71 -1.80 -2.08 -1.62 -1.64 -1.26
#> 7 7 1.11 0.485 -0.572 -0.884 -1.24 -1.58 -1.78 -1.85 -1.97 -1.60 -1.04
#> 8 8 1.14 0.508 0.0330 -0.735 -1.11 -1.65 -1.88 -2.02 -1.89 -1.49 -0.857
#> 9 9 1.32 0.463 -0.0604 -0.627 -1.33 -1.51 -1.71 -1.83 -1.94 -1.32 -1.46
#> 10 10 1.18 0.572 -0.117 -0.521 -1.34 -1.87 -1.88 -1.85 -1.85 -1.63 -0.933
#> # ℹ 90 more rows
#> # ℹ 10 more variables: `55` <dbl>, `60` <dbl>, `65` <dbl>, `70` <dbl>,
#> # `75` <dbl>, `80` <dbl>, `85` <dbl>, `90` <dbl>, `95` <dbl>, `100` <dbl>generate_Y_df
plot(regul_time_0, beta_real_func(regul_time_0))
WARNING! Here we have to regularize X(t) before evaluating Y!
Y_df = generate_Y_df(df = df_regul, curve_type = 'num',
beta_real_func_or_list = beta_real_func,
beta_0_real = beta_0_real, NotS_ratio = NotS_ratio,
seed = 123)
Y = Y_df$Y_noised
head(Y_df)
#> id Y_real Y_noised
#> 1 1 -201.7150 -203.2424
#> 2 2 -197.9957 -198.6230
#> 3 3 -198.3660 -194.1184
#> 4 4 -199.5417 -199.3496
#> 5 5 -197.7755 -197.4232
#> 6 6 -198.4119 -193.7382
Basis
basis = create_bspline_basis(start, end, nbasis, norder)
#basis = fda::create.fourier.basis(rangeval=c(start, end), nbasis=(nbasis))
plot(basis, main=paste0(nbasis, " Function basis"))
Naive PLS
naive_pls_obj = naivePLS(df_list = df, Y = Y_df$Y_noised,
regul_time_obj = regul_time,
curve_type_obj = 'num',
id_col_obj = 'id', time_col_obj = 'time',
print_steps = TRUE, plot_rmsep = TRUE,
print_nbComp = TRUE, plot_reg_curves = TRUE)
#> ### Naive PLS ###
#> => Input format assertions.
#> => Input format assertions OK.
#> => Data formatting.
#> => PLS model.
#> [1] "Optimal number of PLS components : 4"

Regression coefficients
for(i in 2:length(naive_pls_obj$reg_obj)){
plot(naive_pls_obj$reg_obj[[i]])
title(naive_pls_obj$curves_names[i-1])
}
plot(naive_pls_obj$reg_obj$Num_1,
xlab='regul_time', ylab='beta coefficient value',
main="naive pls regression coefficients")
lines(x = regul_time, y = naive_pls_obj$reg_obj$Num_1[, 2], col='blue')
lines(x = regul_time_0, y=beta_real_func(start:end, end), col='red')
FPLS
fpls_obj = funcPLS(df_list = df, Y = Y_df$Y_noised,
basis_obj = basis,
curve_type_obj = 'num',
regul_time_obj = regul_time,
id_col_obj = 'id',time_col_obj = 'time',
print_steps = TRUE, plot_rmsep = TRUE,
print_nbComp = TRUE, plot_reg_curves = TRUE)
#> ### Functional PLS ###
#> => Input format assertions.
#> => Input format assertions OK.
#> => Building alpha matrix.
#> => Building curve names.
#> ==> Evaluating alpha for : NumFD_1.
#> => Evaluate metrix and root_metric.
#> => plsr(Y ~ trans_alphas).
#> Optimal number of PLS components : 2 .
#> => Build Intercept and regression curves for optimal number of components.
#> ==> Build regression curve for : NumFD_1

#Smooth PLS
spls_obj = smoothPLS(df_list = df, Y = Y_df$Y_noised, basis_obj = basis,
orth_obj = TRUE, curve_type_obj = curve_type,
regul_time_obj = regul_time,
int_mode = int_mode, print_steps = TRUE, plot_rmsep = TRUE,
print_nbComp = TRUE, plot_reg_curves = TRUE)
#> ### Smooth PLS ###
#> ## Use parallelization in case of heavy computational load. ##
#> ## Threshold can be manualy adjusted : (default 2500) ##
#> ## >options(SmoothPLS.parallel_threshold = 500) ##
#> => Input format assertions.
#> => Input format assertions OK.
#> => Orthonormalize basis.
#> => Data objects formatting.
#> => Evaluate Lambda matrix.
#> ==> Lambda for : NumFD_1_value.
#> Warning: package 'future' was built under R version 4.4.3
#> => PLSR model.
#> => Optimal number of PLS components : 9
#> => Evaluate SmoothPLS functions and <w_i, p_j> coef.
#> => Build regression functions and intercept.
#> ==> Build regression curve for : NumFD_1_value

Delta
delta_0 = spls_obj$reg_obj$Intercept
print(delta_0)
#> [1] -13.72161
delta = spls_obj$reg_obj$NumFD_1
y_lim = eval_max_min_y(f_list = list(beta_real_func, delta),
regul_time = regul_time)
plot(regul_time, beta_real_func(regul_time), type='l', xlab="Beta_t",
ylim = y_lim)
plot(delta, add=TRUE, col='blue')
#> [1] "done"
Curve comparison
cat("curve_1 : smooth PLS regression curve.\n")
#> curve_1 : smooth PLS regression curve.
cat("curve_2 : functional PLS regression curve.\n")
#> curve_2 : functional PLS regression curve.
cat("curve_3 : naive PLS regression coefficients\n")
#> curve_3 : naive PLS regression coefficients
evaluate_curves_distances(real_f = beta_real_func,
regul_time = regul_time,
fun_fd_list = list(
delta,
fpls_obj$reg_obj$NumFD_1,
approxfun(x = regul_time,
y = naive_pls_obj$opti_reg_coef)
)
)
#> [1] "real_f -> curve_1 / INPROD : 5.42764621642823 / DIST : 3.50987893386841"
#> [1] "real_f -> curve_2 / INPROD : 6.66383089607853 / DIST : 3.40650741798858"
#> [1] "real_f -> curve_3 / INPROD : 247.075818435331 / DIST : 68.8619172938924"
y_lim = eval_max_min_y(f_list = list(spls_obj$reg_obj$NumFD_1,
fpls_obj$reg_obj$NumFD_1,
approxfun(x = regul_time,
y = naive_pls_obj$opti_reg_coef),
beta_real_func ),
regul_time = regul_time_0)
plot(regul_time_0, beta_real_func(regul_time_0), col = 'black',
ylim = y_lim, xlab = 'Time', ylab = 'Value', type = 'l')
lines(regul_time_0, approxfun(x = regul_time,
y = naive_pls_obj$opti_reg_coef)(regul_time_0),
col = 'green')
title(paste0(names(spls_obj$reg_obj)[2], " regression curves"))
plot(spls_obj$reg_obj$NumFD_1, col = 'blue', add = TRUE)
#> [1] "done"
plot(fpls_obj$reg_obj$NumFD_1, col = 'red', add = TRUE)
#> [1] "done"
legend("bottomleft",
legend = c("Real curve", "NaivePLS coef",
"SmoothPLS reg curve", "FunctionalPLS reg curve"),
col = c("black", "green", "blue", "red"),
lty = 1,
lwd = 1)
y_lim = eval_max_min_y(f_list = list(beta_real_func,
spls_obj$reg_obj$NumFD_1,
fpls_obj$reg_obj$NumFD_1),
regul_time = regul_time)
plot(regul_time_0, beta_real_func(regul_time_0), type='l', xlab="Beta_t",
ylim = y_lim, lwd = 2)
plot(spls_obj$reg_obj$NumFD_1, add=TRUE, col='blue', lwd = 1)
#> [1] "done"
plot(fpls_obj$reg_obj$NumFD_1, add=TRUE, col='red', lwd = 1)
#> [1] "done"
legend("bottomleft",
legend = c("Real curve",
"SmoothPLS reg curve", "FunctionalPLS reg curve"),
col = c("black", "blue", "red"),
lty = 1,
lwd = 1)
evaluate_curves_distances(real_f = beta_real_func,
regul_time = regul_time,
fun_fd_list = list(spls_obj$reg_obj$NumFD_1,
fpls_obj$reg_obj$NumFD_1))
#> [1] "real_f -> curve_1 / INPROD : 5.42764621642823 / DIST : 3.50987893386841"
#> [1] "real_f -> curve_2 / INPROD : 6.66383089607853 / DIST : 3.40650741798858"Plot the second derivatives for the smoothness :
plot((fda::deriv.fd(expr = spls_obj$reg_obj$NumFD_1, Lfdobj = 2)),
col='blue')
#> [1] "done"
plot((fda::deriv.fd(expr = fpls_obj$reg_obj$NumFD_1, Lfdobj = 2)),
add=TRUE, col='red')
#> [1] "done"
title("Second derivatives")
legend("bottomleft",
legend = c("delta_SmoothPLS''", "delta_FPLS''"),
col = c("blue", "red"),
lty = 1,
lwd = 1)
Results
train_results = data.frame(matrix(ncol = 5, nrow = 3))
colnames(train_results) = c("PRESS", "RMSE", "MAE", "R2", "var_Y")
rownames(train_results) = c("NaivePLS", "FPLS", "SmoothPLS")
test_results = train_resultsTrain Set
Y_train = Y_df$Y_noised
# Naive
Y_hat = predict(naive_pls_obj$plsr_model,
ncomp = naive_pls_obj$nbCP_opti,
newdata = as.matrix(df_wide[, -c(1)]))
train_results["NaivePLS", ] = evaluate_results(Y_train, Y_hat)
# FPLS
Y_hat_fpls = (predict(fpls_obj$plsr_model, ncomp = fpls_obj$nbCP_opti,
newdata = fpls_obj$trans_alphas)
+ fpls_obj$reg_obj$Intercept
+ mean(Y))
Y_hat_fpls = smoothPLS_predict(df_predict_list = df,
delta_list = fpls_obj$reg_obj,
curve_type_obj = curve_type,
int_mode = int_mode,
regul_time_obj = regul_time)
train_results["FPLS", ] = evaluate_results(Y_train, Y_hat_fpls)
# Smooth PLS
Y_hat_spls = smoothPLS_predict(df_predict_list = df,
delta_list = spls_obj$reg_obj,
curve_type_obj = curve_type,
int_mode = int_mode,
regul_time_obj = regul_time)
train_results["SmoothPLS", ] = evaluate_results(Y_train, Y_hat_spls)
train_results["NaivePLS", "nb_cp"] = naive_pls_obj$nbCP_opti
train_results["FPLS", "nb_cp"] = fpls_obj$nbCP_opti
train_results["SmoothPLS", "nb_cp"] = spls_obj$nbCP_opti
train_results
#> PRESS RMSE MAE R2 var_Y nb_cp
#> NaivePLS 447.7783 2.116077 1.658857 0.8713332 87.13332 4
#> FPLS 2958.4590 5.439172 4.598839 0.1499018 14.96341 2
#> SmoothPLS 15533.5802 12.463378 11.223560 -3.4634956 13.79539 9Test Set
Test set creation
nind_test = number_of_test_id(TTRatio = TTRatio, nind = nind)
df_test = generate_X_df(nind = nind_test, start = start, end = end,
curve_type = curve_type, lambda_0 = lambda_0, lambda_1 = lambda_1,
prob_start = prob_start)
Y_df_test = generate_Y_df(df_test, curve_type = curve_type,
beta_real_func_or_list = beta_real_func,
beta_0_real, NotS_ratio,
id_col = 'id', time_col = 'time')
df_test_regul = regularize_time_series(df_test, time_seq = regul_time,
curve_type = curve_type)
df_test_wide = convert_to_wide_format(df_test_regul)Evaluation
Y_test = Y_df_test$Y_noised
# Naive
Y_hat = predict(naive_pls_obj$plsr_model,
ncomp = naive_pls_obj$nbCP_opti,
newdata = as.matrix(df_test_wide[, -c(1)]))
test_results["NaivePLS", ] = evaluate_results(Y_test, Y_hat)
# FPLS
Y_hat_fpls = smoothPLS_predict(df_predict_list = df_test,
delta_list = fpls_obj$reg_obj,
curve_type_obj = curve_type,
int_mode = int_mode,
regul_time_obj = regul_time)
test_results["FPLS", ] = evaluate_results(Y_test, Y_hat_fpls)
# Smooth PLS
Y_hat_spls = smoothPLS_predict(df_predict_list = df_test,
delta_list = list(delta_0, delta),
curve_type_obj = curve_type,
int_mode = int_mode,
regul_time_obj = regul_time)
test_results["SmoothPLS", ] = evaluate_results(Y_test, Y_hat_spls)
test_results["NaivePLS", "nb_cp"] = naive_pls_obj$nbCP_opti
test_results["FPLS", "nb_cp"] = fpls_obj$nbCP_opti
test_results["SmoothPLS", "nb_cp"] = spls_obj$nbCP_opti
test_results
#> PRESS RMSE MAE R2 var_Y nb_cp
#> NaivePLS 222.84261 2.985583 2.3244464 -2.813555 232.68890 4
#> FPLS 31.38556 1.120456 0.9331762 0.462892 81.55013 2
#> SmoothPLS 3881.27654 12.459978 12.4399294 -65.421150 76.32215 9Plot results
train_results
#> PRESS RMSE MAE R2 var_Y nb_cp
#> NaivePLS 447.7783 2.116077 1.658857 0.8713332 87.13332 4
#> FPLS 2958.4590 5.439172 4.598839 0.1499018 14.96341 2
#> SmoothPLS 15533.5802 12.463378 11.223560 -3.4634956 13.79539 9
test_results
#> PRESS RMSE MAE R2 var_Y nb_cp
#> NaivePLS 222.84261 2.985583 2.3244464 -2.813555 232.68890 4
#> FPLS 31.38556 1.120456 0.9331762 0.462892 81.55013 2
#> SmoothPLS 3881.27654 12.459978 12.4399294 -65.421150 76.32215 9
plot_model_metrics_base(train_results, test_results)



plot_model_metrics_base(train_results, test_results,
models_to_plot = c('FPLS', 'SmoothPLS'))



