
Data generating function for univariate plsR models
Source:R/simul_data_UniYX.R
simul_data_UniYX.Rd
This function generates a single univariate response value \(Y\) and a vector of explanatory variables \((X_1,\ldots,X_{totdim})\) drawn from a model with a given number of latent components.
Details
This function should be combined with the replicate function to give rise to a larger dataset. The algorithm used is a port of the one described in the article of Li which is a multivariate generalization of the algorithm of Naes and Martens.
References
T. Naes, H. Martens, Comparison of prediction methods for
multicollinear data, Commun. Stat., Simul. 14 (1985) 545-576.
Morris, Elaine B. Martin, Model selection for partial least squares
regression, Chemometrics and Intelligent Laboratory Systems 64 (2002)
79-89, doi:10.1016/S0169-7439(02)00051-5
.
See also
simul_data_YX
and simul_data_complete
for generating multivariate data
Author
Frédéric Bertrand
frederic.bertrand@lecnam.net
https://fbertran.github.io/homepage/
Examples
simul_data_UniYX(20,6)
#> Y X1 X2 X3 X4 X5
#> 5.37208159 2.61772471 1.98015086 2.73966905 -0.65033218 2.80462160
#> X6 X7 X8 X9 X10 X11
#> 2.56459761 2.97305937 -0.07073625 0.09994084 1.52460131 1.87522259
#> X12 X13 X14 X15 X16 X17
#> 1.47017902 2.54432359 3.69661409 0.10830547 1.51483474 1.89846468
#> X18 X19 X20
#> 1.46503159 2.55933333 3.67439144
# \donttest{
dimX <- 6
Astar <- 2
simul_data_UniYX(dimX,Astar)
#> Y X1 X2 X3 X4 X5 X6
#> -13.907393 1.960788 1.972129 -12.548192 1.981423 1.972791 -12.529984
(dataAstar2 <- data.frame(t(replicate(50,simul_data_UniYX(dimX,Astar)))))
#> Y X1 X2 X3 X4 X5
#> 1 3.8835021 -0.86101898 -0.8585292 3.5667795 -0.86396799 -0.85963034
#> 2 2.1036123 -4.23745332 -4.2451625 2.6827753 -4.23773593 -4.24655183
#> 3 -7.6334554 1.63488040 1.6198754 -7.0916115 1.62034004 1.62234791
#> 4 5.2684942 6.02266762 6.0035262 3.4444054 6.01491653 6.03774662
#> 5 5.3073841 3.43863801 3.4290896 3.8601260 3.44318025 3.42863295
#> 6 14.1292800 9.39403422 9.4096588 10.2487855 9.39540352 9.39415553
#> 7 -12.7078565 -4.99976673 -5.0027713 -10.0752803 -4.99043747 -4.99635204
#> 8 -8.3401731 2.64693430 2.6431057 -8.1373183 2.63832587 2.63936376
#> 9 2.6521257 -0.09433747 -0.1078118 2.2133681 -0.08936865 -0.09518355
#> 10 8.6763013 -9.88098128 -9.9042742 10.0556337 -9.89152604 -9.87553203
#> 11 -0.9632626 9.58474352 9.5887055 -3.2305931 9.60993068 9.56627937
#> 12 -16.8184852 -0.94634924 -0.9526492 -14.4230444 -0.93679857 -0.96541380
#> 13 1.0199900 -5.19862080 -5.1936552 2.1500019 -5.19912401 -5.19056624
#> 14 17.8291114 -1.34479290 -1.3492358 15.9098476 -1.34808293 -1.33920119
#> 15 -4.6104361 -6.71956191 -6.7168387 -2.2519049 -6.69500066 -6.71863827
#> 16 2.0552492 1.91474298 1.9273525 1.3234751 1.92965979 1.91400875
#> 17 -1.4873593 -0.32223625 -0.3259767 -1.1575482 -0.30600170 -0.30726717
#> 18 -5.0542769 -7.09269213 -7.1057334 -2.7318341 -7.09574924 -7.09831930
#> 19 11.2761574 3.47220734 3.4847111 9.0669754 3.47792371 3.48452409
#> 20 -11.6565941 3.09511377 3.1179164 -10.8131318 3.11844854 3.10927176
#> 21 9.3498807 7.58249010 7.5926645 6.3069149 7.58835745 7.58460974
#> 22 -2.8393309 4.40729402 4.4115625 -3.5618869 4.42013211 4.42532752
#> 23 -10.6205438 7.71139729 7.6919160 -10.9908654 7.70183762 7.70002745
#> 24 -18.4918386 -8.17862749 -8.1543959 -14.3323704 -8.17335733 -8.19547554
#> 25 -4.1456204 4.67818616 4.6700780 -4.9050637 4.65602956 4.67854494
#> 26 4.6904730 -1.20983931 -1.1910112 4.5526713 -1.18465815 -1.18363840
#> 27 -1.3481296 -5.20637717 -5.2207911 0.1423457 -5.19546166 -5.20366869
#> 28 -6.9649421 -10.51188564 -10.5142038 -3.5120759 -10.51934024 -10.53309255
#> 29 12.0024773 5.22529539 5.2446828 9.2860329 5.23587640 5.23076541
#> 30 1.0779628 9.01658176 9.0175611 -1.2955567 9.02725592 9.00860771
#> 31 1.0493864 1.05689427 1.0253789 0.7514018 1.02966186 1.04720388
#> 32 -5.0395468 -6.59996503 -6.5995401 -2.7773355 -6.59466791 -6.59926102
#> 33 -17.3292878 -6.74167486 -6.7699467 -13.3821982 -6.73789684 -6.73729467
#> 34 -5.5137724 5.51032179 5.5052749 -6.2023025 5.50789402 5.52668350
#> 35 -12.4978407 -1.49623562 -1.5004234 -10.7332391 -1.52810861 -1.52425007
#> 36 -3.8843655 -0.70012435 -0.7107067 -3.2533373 -0.70248578 -0.71553083
#> 37 -5.6005114 5.64539111 5.6497678 -6.1774716 5.64850876 5.64455227
#> 38 -2.6804103 2.42087271 2.4032030 -2.9265460 2.41376446 2.41339274
#> 39 11.6112195 1.47025923 1.4833565 9.9658942 1.48251834 1.47975745
#> 40 2.0287946 -2.78573085 -2.7772632 2.4840439 -2.78562442 -2.78234378
#> 41 -5.1830779 -0.70929950 -0.7211025 -4.3696184 -0.72363317 -0.73659370
#> 42 -15.3210544 0.95543343 0.9476569 -13.5879601 0.95379695 0.95064553
#> 43 -5.1145830 1.49915057 1.4852571 -4.6896349 1.50728777 1.48331294
#> 44 4.1997361 -2.68052500 -2.6882637 4.2251419 -2.68428888 -2.68853188
#> 45 8.6108449 1.53618973 1.5237747 7.2044338 1.50836988 1.52866652
#> 46 -5.0628676 2.00435225 1.9992170 -4.8958960 2.01722943 2.00301714
#> 47 -16.4823624 -6.30269172 -6.3001770 -12.8443507 -6.30296475 -6.29372646
#> 48 -16.5945227 -13.86088554 -13.8849554 -11.0957969 -13.87212632 -13.87673512
#> 49 6.1745872 -1.38215770 -1.3846519 5.7810565 -1.37898207 -1.39402422
#> 50 -7.9239998 -1.35914913 -1.3883223 -6.7668870 -1.38381653 -1.36855332
#> X6
#> 1 3.5648792
#> 2 2.6722453
#> 3 -7.0861820
#> 4 3.4467972
#> 5 3.8727228
#> 6 10.2741243
#> 7 -10.0948566
#> 8 -8.1367866
#> 9 2.2250447
#> 10 10.0459464
#> 11 -3.2237765
#> 12 -14.4261306
#> 13 2.1469067
#> 14 15.8915027
#> 15 -2.2555525
#> 16 1.3162244
#> 17 -1.1894906
#> 18 -2.7349873
#> 19 9.0786301
#> 20 -10.8211611
#> 21 6.3180235
#> 22 -3.5412934
#> 23 -11.0057288
#> 24 -14.3207732
#> 25 -4.9146715
#> 26 4.5492355
#> 27 0.1613773
#> 28 -3.5319529
#> 29 9.3058474
#> 30 -1.2829327
#> 31 0.7383270
#> 32 -2.7550041
#> 33 -13.3664442
#> 34 -6.2054366
#> 35 -10.6931173
#> 36 -3.2291507
#> 37 -6.1657026
#> 38 -2.9261940
#> 39 9.9363752
#> 40 2.4753093
#> 41 -4.3433148
#> 42 -13.5772263
#> 43 -4.6896462
#> 44 4.2330389
#> 45 7.2106320
#> 46 -4.8978538
#> 47 -12.8548489
#> 48 -11.1004403
#> 49 5.7849515
#> 50 -6.7647212
cvtable(summary(cv.plsR(Y~.,data=dataAstar2,5,NK=100, verbose=FALSE)))
#> ____************************************************____
#> Error in eval(mf, parent.frame()): object 'dataAstar2' not found
dimX <- 6
Astar <- 3
simul_data_UniYX(dimX,Astar)
#> Y X1 X2 X3 X4 X5 X6
#> 5.147520 1.513335 4.440176 2.109769 1.526822 4.455568 2.118202
(dataAstar3 <- data.frame(t(replicate(50,simul_data_UniYX(dimX,Astar)))))
#> Y X1 X2 X3 X4 X5
#> 1 1.61184288 -3.1453515 2.67245432 -1.38751871 -3.1335055 2.680796e+00
#> 2 -1.30671233 6.0789699 -0.01409086 1.05812766 6.0615349 5.139614e-05
#> 3 3.86404629 7.5471695 4.05847595 3.51592392 7.5450722 4.066135e+00
#> 4 -5.71544893 4.4169696 -2.06311192 -2.04103648 4.4280102 -2.057402e+00
#> 5 10.42782288 1.0612895 -2.39586723 11.10991373 1.0780188 -2.375335e+00
#> 6 15.74690681 3.5686973 10.31033359 8.89112771 3.5510225 1.032373e+01
#> 7 -6.25234893 0.7998805 -3.45696908 -2.74371941 0.8208916 -3.471445e+00
#> 8 15.50724918 -10.6852600 -0.88442192 9.76954475 -10.7019801 -9.106402e-01
#> 9 3.32925053 0.3733313 -0.94292185 3.71406374 0.3819483 -9.325856e-01
#> 10 9.16838763 -10.7052609 -5.89006748 7.67509096 -10.6965845 -5.883337e+00
#> 11 -21.22080041 -1.3537709 -7.17443071 -14.58477057 -1.3770165 -7.189509e+00
#> 12 -7.13605888 -2.0240266 0.13805329 -7.19593050 -2.0363195 1.543217e-01
#> 13 0.32544237 2.5910330 1.11652908 0.41826840 2.5940457 1.100608e+00
#> 14 -4.01863392 5.5147199 4.67585699 -4.23649047 5.5235122 4.652382e+00
#> 15 3.41492208 2.8135642 8.82793641 -1.65962845 2.8282798 8.828523e+00
#> 16 -2.71240209 -0.1181444 2.08747214 -3.85839105 -0.1222899 2.092057e+00
#> 17 5.64165464 -3.8922316 -3.56902390 5.60484620 -3.8951310 -3.557819e+00
#> 18 -8.74803187 -16.6573380 -14.86368112 -4.62858551 -16.6479412 -1.487390e+01
#> 19 16.64326611 -5.1423132 4.51826085 9.80288345 -5.1565371 4.539871e+00
#> 20 4.83944696 -5.4797383 4.98217762 -0.82966162 -5.4758555 4.986784e+00
#> 21 -2.37452366 -1.5272576 -6.69083286 1.47741360 -1.5264493 -6.678615e+00
#> 22 -0.46743870 -6.0470156 -4.74361450 -0.08959611 -6.0812672 -4.751834e+00
#> 23 -0.80190884 3.5343239 4.03116230 -2.04418975 3.5333668 4.019366e+00
#> 24 -15.11309472 -2.5697972 -2.13676919 -13.05862183 -2.5661690 -2.126380e+00
#> 25 7.73080317 -1.6197055 3.49750323 3.95377848 -1.6292029 3.496756e+00
#> 26 6.89997310 -14.7632822 -1.01305798 0.94643873 -14.7482680 -1.008190e+00
#> 27 4.33649122 2.2461857 -0.78315855 4.92004196 2.2632953 -7.794394e-01
#> 28 14.29956345 -3.1933515 -3.56095518 13.62003606 -3.1778156 -3.557107e+00
#> 29 0.23645067 0.3290622 -1.05430729 1.08159722 0.3289938 -1.044840e+00
#> 30 -0.41725081 -18.1209777 -12.04381295 0.03811136 -18.1039799 -1.204332e+01
#> 31 -11.91781638 2.4010988 -9.96809706 -3.23666283 2.4030743 -9.982433e+00
#> 32 -0.03276720 5.8873117 1.76116090 1.10291100 5.8850760 1.769101e+00
#> 33 -1.84971837 -0.7848941 1.40287358 -2.92722243 -0.7931282 1.393646e+00
#> 34 2.12820592 -10.0175419 -7.91879427 2.79155658 -10.0450615 -7.919383e+00
#> 35 7.56748431 5.9218802 8.78864118 3.59299874 5.9060197 8.769332e+00
#> 36 16.09577645 5.4569825 5.32502527 12.78369177 5.4296274 5.345703e+00
#> 37 0.19097685 9.1880168 6.89820547 -0.41668056 9.1931464 6.893767e+00
#> 38 -1.62614423 17.7220363 8.47289389 -0.04774728 17.7168731 8.475962e+00
#> 39 -10.74021974 -0.2053579 -0.13773318 -9.32781957 -0.2033117 -1.446842e-01
#> 40 3.06197407 1.5532651 -3.70648028 5.43621067 1.5366369 -3.709812e+00
#> 41 0.06081361 3.6684504 4.93578748 -1.67370886 3.6816702 4.896537e+00
#> 42 1.72664479 -1.6221266 0.21791156 0.79285769 -1.6082344 2.004612e-01
#> 43 -12.77548455 5.7172520 -6.49999945 -4.97376634 5.6843545 -6.511580e+00
#> 44 7.87577686 4.4654945 2.02644763 7.49516136 4.4560643 2.017758e+00
#> 45 -0.13041315 -5.1855721 8.36831532 -7.40532668 -5.1898595 8.383204e+00
#> 46 -5.35516241 7.0032044 1.89287812 -3.09609157 7.0132003 1.900229e+00
#> 47 7.51800821 0.8560249 5.63294764 3.39519055 0.8172378 5.641474e+00
#> 48 12.07280412 -20.0492593 -4.94393234 5.80418880 -20.0518943 -4.915580e+00
#> 49 -2.23649254 1.0247076 4.79627403 -4.48618152 1.0307158 4.791178e+00
#> 50 20.20569168 1.4178214 10.11621374 11.82872431 1.4087079 1.013776e+01
#> X6
#> 1 -1.40858378
#> 2 1.07207982
#> 3 3.50041869
#> 4 -2.06255993
#> 5 11.09622926
#> 6 8.89227423
#> 7 -2.75335931
#> 8 9.78326885
#> 9 3.70934172
#> 10 7.69532509
#> 11 -14.57035737
#> 12 -7.20389554
#> 13 0.42151221
#> 14 -4.22599353
#> 15 -1.64441264
#> 16 -3.84831000
#> 17 5.60499342
#> 18 -4.62487007
#> 19 9.81102871
#> 20 -0.83920066
#> 21 1.50512520
#> 22 -0.08125450
#> 23 -2.02903098
#> 24 -13.05831424
#> 25 3.95899158
#> 26 0.93761627
#> 27 4.93596583
#> 28 13.60030540
#> 29 1.07604548
#> 30 0.03042669
#> 31 -3.25687586
#> 32 1.08729402
#> 33 -2.95200753
#> 34 2.79537222
#> 35 3.57952657
#> 36 12.79662174
#> 37 -0.41224688
#> 38 -0.03645503
#> 39 -9.31912428
#> 40 5.40963671
#> 41 -1.69099017
#> 42 0.77923864
#> 43 -5.00067229
#> 44 7.49760779
#> 45 -7.40554767
#> 46 -3.09519023
#> 47 3.37952371
#> 48 5.80402100
#> 49 -4.46498290
#> 50 11.84522252
cvtable(summary(cv.plsR(Y~.,data=dataAstar3,5,NK=100, verbose=FALSE)))
#> ____************************************************____
#> Error in eval(mf, parent.frame()): object 'dataAstar3' not found
dimX <- 6
Astar <- 4
simul_data_UniYX(dimX,Astar)
#> Y X1 X2 X3 X4 X5 X6
#> 4.1025014 -7.3463924 -1.8833438 2.7813756 -5.8684888 -0.4107439 4.2461270
(dataAstar4 <- data.frame(t(replicate(50,simul_data_UniYX(dimX,Astar)))))
#> Y X1 X2 X3 X4
#> 1 0.966031019 4.50068200 -1.94061431 3.7402178 9.53705369
#> 2 3.495971538 8.02106104 3.22040249 4.8583732 4.71601175
#> 3 -1.670187656 -2.85123295 -1.28044149 -2.0228122 -7.45368695
#> 4 6.776411670 -1.65313773 2.03237970 4.9211335 -0.66178490
#> 5 -2.837133817 3.75149740 0.74930417 -2.1141171 6.76443657
#> 6 -3.090030903 1.85817645 -11.75887543 4.8730087 -0.73794398
#> 7 2.051109713 4.77718821 8.02323831 -0.9316928 0.03708379
#> 8 7.389664461 -4.75863834 3.69398209 3.1939522 -8.04082347
#> 9 9.627635282 3.32824120 1.33571275 10.0884911 -1.06203683
#> 10 -0.226408178 0.09123474 9.69438503 -6.0834229 1.83400953
#> 11 -1.896880639 -3.04452889 -3.01264925 -1.0823789 -2.26983188
#> 12 -2.232002377 -2.84021073 4.96370258 -6.5183381 -0.63463906
#> 13 4.361903283 -3.93227840 -3.10445698 5.0062563 -5.09856165
#> 14 -15.151074140 -2.07063564 -3.06376273 -14.5004611 0.86600345
#> 15 -5.150118268 0.46972134 -1.91339687 -3.6978604 2.14253078
#> 16 1.821468706 -5.85561856 -3.58035750 2.1570105 0.96659778
#> 17 5.354033787 14.10975378 15.55440141 1.2229256 9.94728332
#> 18 13.346756685 -6.37944723 3.62587755 8.8088506 -7.23265418
#> 19 -1.876444141 -4.08136765 -4.04430045 -1.1081081 -8.00201728
#> 20 0.286432025 5.25001628 -3.77857011 4.3487252 1.85623546
#> 21 -4.893634969 -6.84102266 -10.67132351 -0.9226245 0.88802679
#> 22 -17.479906863 0.86397862 -14.61131427 -8.1053448 5.28912109
#> 23 -5.970519904 -9.55824956 -8.70219368 -4.2830267 -13.79289519
#> 24 11.830100673 -4.56473566 5.88461719 6.4419748 -6.09922013
#> 25 -13.108851286 -4.36255329 -2.23245896 -13.4950822 -1.69063431
#> 26 0.766468795 4.93581420 2.34223122 0.8549509 4.29308605
#> 27 -13.445290428 -10.39174893 -8.73274916 -12.3041350 -10.19909712
#> 28 -6.887919309 -3.08610363 -5.74355344 -4.5215467 -5.27074432
#> 29 4.018200137 3.50896470 -3.30077486 7.4055212 2.49665829
#> 30 3.300228900 2.66367169 5.63768688 0.6643811 -2.55645973
#> 31 -5.116920292 -1.00378799 -0.05558991 -5.2346620 2.44113148
#> 32 -4.219609448 4.00960831 9.51248664 -8.6100331 2.04055413
#> 33 16.359444387 6.00761376 9.07118039 13.2718654 3.92092304
#> 34 15.228556033 0.87004344 8.09345624 10.7638992 -0.19726769
#> 35 -6.948448988 -7.15303402 -13.36909721 -1.7739551 -4.92127340
#> 36 0.408994809 -4.51098078 0.91030664 -2.0332454 -6.50986719
#> 37 0.744618591 0.04720849 -6.47685893 4.9257665 2.85202746
#> 38 -3.241210024 -9.21759590 -4.76961090 -3.9257373 -3.82689540
#> 39 11.114421886 -5.08209953 -2.93155309 11.2797439 -2.75695757
#> 40 6.550466610 5.00269866 8.22265149 3.4478487 2.46121647
#> 41 -4.617573850 -0.27947483 -1.30340522 -3.9362930 -3.29092805
#> 42 -0.006716945 5.90653668 0.38579251 1.9457905 6.15568801
#> 43 -9.981692586 -3.05601532 0.12834889 -11.3388541 4.36133430
#> 44 -2.430963824 7.42050044 8.61457109 -4.9584686 3.46372229
#> 45 12.471468862 8.19222227 1.03879541 15.0466501 7.95701556
#> 46 0.100983251 12.01505990 6.63291900 0.6671434 7.56202524
#> 47 4.990012231 -4.86603505 1.27598106 2.7874906 0.96174553
#> 48 5.060678322 -0.67182060 -0.36544881 4.8536096 -0.83716419
#> 49 13.599742755 6.99960766 6.85180475 12.1439564 7.16229107
#> 50 -3.262443935 7.73136191 3.36980553 -2.5844432 8.23744657
#> X5 X6
#> 1 3.10546507 8.75943335
#> 2 -0.05796514 1.54075568
#> 3 -5.86028068 -6.59672126
#> 4 3.03007345 5.90012114
#> 5 3.77272826 0.89945667
#> 6 -14.36149135 2.25322462
#> 7 3.30444318 -5.67128645
#> 8 0.41780007 -0.08179084
#> 9 -3.03290303 5.69245773
#> 10 11.44183555 -4.31039378
#> 11 -2.23279419 -0.30564154
#> 12 7.16040442 -4.32085247
#> 13 -4.25593043 3.84711146
#> 14 -0.09342710 -11.55567798
#> 15 -0.23392278 -1.99863219
#> 16 3.25125657 9.01570694
#> 17 11.41630450 -2.91349902
#> 18 2.76513719 7.98415293
#> 19 -7.96694145 -5.01846735
#> 20 -7.15630305 0.95161804
#> 21 -2.92758431 6.82304833
#> 22 -10.18549421 -3.71102204
#> 23 -12.88557036 -8.49774958
#> 24 4.39218902 4.94449344
#> 25 0.40517274 -10.85014294
#> 26 1.68290564 0.23176969
#> 27 -8.55642976 -12.12425518
#> 28 -7.95598944 -6.71163939
#> 29 -4.31376896 6.39878120
#> 30 0.41085986 -4.57152587
#> 31 3.42085930 -1.80381199
#> 32 7.54634697 -10.58679208
#> 33 6.98597630 11.20854621
#> 34 7.00303727 9.66707478
#> 35 -11.08549523 0.49753277
#> 36 -1.11326943 -4.02839306
#> 37 -3.67568665 7.75985653
#> 38 0.66765200 1.47913194
#> 39 -0.58458609 13.62261220
#> 40 5.65703379 0.89087367
#> 41 -4.31533175 -6.93089191
#> 42 0.64110556 2.20665903
#> 43 7.56560199 -3.90385110
#> 44 4.64156162 -8.93464409
#> 45 0.81156501 14.80883364
#> 46 2.16760214 -3.81518298
#> 47 7.11068531 8.63438251
#> 48 -0.55846990 4.66900855
#> 49 6.99317228 12.29462297
#> 50 3.84947115 -2.09604189
cvtable(summary(cv.plsR(Y~.,data=dataAstar4,5,NK=100, verbose=FALSE)))
#> ____************************************************____
#> Error in eval(mf, parent.frame()): object 'dataAstar4' not found
rm(list=c("dimX","Astar","dataAstar2","dataAstar3","dataAstar4"))
# }