Skip to contents

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.

Usage

simul_data_UniYX(totdim, ncomp)

Arguments

totdim

Number of columns of the X vector (from ncomp to hardware limits)

ncomp

Number of latent components in the model (from 2 to 6)

Value

vector

\((Y,X_1,\ldots,X_{totdim})\)

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

Examples


simul_data_UniYX(20,6)                          
#>          Y         X1         X2         X3         X4         X5         X6 
#>  7.8534928  3.6772263  1.2704219 -0.6118943  1.7930951  3.4321072  1.5501719 
#>         X7         X8         X9        X10        X11        X12        X13 
#> -0.8686295  2.0100573  1.7038468  3.8596132  2.6043139 -0.4219550  1.2110077 
#>        X14        X15        X16        X17        X18        X19        X20 
#>  0.2172830  1.7189758  3.8655080  2.6094597 -0.4342860  1.2302024  0.1952095 

# \donttest{
dimX <- 6
Astar <- 2
simul_data_UniYX(dimX,Astar)
#>           Y          X1          X2          X3          X4          X5 
#> -7.81356732 -0.07559925 -0.06847876 -6.83276548 -0.08570913 -0.10272168 
#>          X6 
#> -6.83233237 
(dataAstar2 <- data.frame(t(replicate(50,simul_data_UniYX(dimX,Astar)))))
#>              Y          X1          X2          X3          X4          X5
#> 1    1.9610973  -2.3509293  -2.3386581   2.1737165  -2.3423275  -2.3666562
#> 2    6.9525150   2.1820444   2.2000678   5.7211901   2.2156663   2.1749880
#> 3   -2.6790420   4.4854521   4.4870089  -3.3807339   4.4745564   4.4898679
#> 4   -2.6108044  -1.2858377  -1.2832786  -1.7721150  -1.2852844  -1.2690856
#> 5    2.9603240   2.9467993   2.9578609   2.0947582   2.9525697   2.9552191
#> 6    8.5528409  -7.3807319  -7.3573840   9.2377232  -7.3739159  -7.3624564
#> 7   -7.2733200 -11.9341857 -11.9472424  -3.3758580 -11.9479603 -11.9300590
#> 8    8.1511724   3.2692408   3.2719758   6.2921909   3.2470642   3.2512238
#> 9   -0.4593410  -7.2533785  -7.2586363   1.1362337  -7.2591694  -7.2504996
#> 10  -0.1694483  -2.1957090  -2.2061237   0.3889643  -2.1950346  -2.1913774
#> 11   5.9465671  -3.6672488  -3.6665887   6.0623161  -3.6801212  -3.6581084
#> 12  -2.7720297   6.5531142   6.5551069  -3.8988251   6.5454468   6.5415288
#> 13   0.5283624  -1.2550099  -1.2518747   0.9026491  -1.2519802  -1.2602006
#> 14  -0.5754277  -3.6806939  -3.6667880   0.5216970  -3.6655677  -3.6765435
#> 15  -1.2846518   5.6515960   5.6435320  -2.6617198   5.6379211   5.6372110
#> 16  -8.7711233  -5.8433278  -5.8293066  -6.2009799  -5.8266485  -5.8352574
#> 17  -1.3650570  -1.4263534  -1.4006373  -0.8765337  -1.4144668  -1.4101477
#> 18  -6.0614505   2.3245663   2.3175988  -5.8744945   2.2957887   2.3111273
#> 19  -2.5263167   4.7333916   4.7143966  -3.3089607   4.7322114   4.7359671
#> 20  -9.7083636  -5.0725728  -5.0726326  -7.1642755  -5.0643955  -5.0744067
#> 21  -6.5809042  -6.5024056  -6.5391720  -4.3118146  -6.5199099  -6.5253843
#> 22  -4.7165225   4.3824212   4.3791757  -4.9657161   4.3862712   4.3745005
#> 23  -6.1947746  -2.6367555  -2.6257029  -4.9169209  -2.6221165  -2.6323716
#> 24   5.0064470  -1.5161843  -1.4968698   4.4735741  -1.4914735  -1.4962912
#> 25  -0.4248363   2.8969269   2.8933179  -0.9115077   2.9049781   2.8896915
#> 26  -3.5014256  -1.1474704  -1.1367143  -2.7867582  -1.1478112  -1.1505058
#> 27  -5.2742745   5.4563674   5.4365618  -5.7534197   5.4690320   5.4428272
#> 28  -1.5323603  -0.6468047  -0.6498111  -1.3104814  -0.6504413  -0.6452237
#> 29   1.2638325  -0.5673165  -0.5670161   1.1523021  -0.5883320  -0.5646307
#> 30  -0.6513703  -0.2120945  -0.2403428  -0.7283493  -0.2214669  -0.2156572
#> 31   8.4672781   6.5360539   6.5118738   5.8008019   6.5291534   6.5577275
#> 32  -7.8304389  -7.7615634  -7.7799257  -5.2067878  -7.7541509  -7.7533843
#> 33  -1.2294632   0.6098052   0.6221162  -1.2981270   0.6103067   0.6292808
#> 34  -2.0053640  -3.5916278  -3.5930431  -0.8533432  -3.5718870  -3.5994429
#> 35  10.3326442   0.8326399   0.8242969   8.8188439   0.8352314   0.8323191
#> 36   3.9156553   3.8005802   3.7770840   2.4413830   3.8013864   3.8042261
#> 37 -13.2694306  -1.4455271  -1.4367998 -11.4380841  -1.4506169  -1.4483815
#> 38  13.4428438  12.0223364  12.0019870   8.8354909  12.0200598  12.0224885
#> 39  10.4029916  10.8848234  10.8683710   6.6929034  10.8676938  10.8788325
#> 40   4.2556091   5.8365312   5.8212118   2.1736602   5.8334738   5.8606369
#> 41  -1.6634178   4.2070586   4.2117281  -2.5339766   4.2106535   4.2046851
#> 42  12.5959233   6.3952090   6.3936081   9.5962776   6.3913491   6.4068746
#> 43   4.6713024   3.4738388   3.4760668   3.1504845   3.5003705   3.4948261
#> 44   7.2821676   7.4432345   7.4669326   4.6036143   7.4754909   7.4417828
#> 45  -1.0771772   0.5218357   0.5247534  -0.9857220   0.5271016   0.5246782
#> 46  -2.2375562   1.9670077   1.9638172  -2.6409513   1.9364672   1.9448805
#> 47  -3.5071578  -8.0064118  -8.0056370  -1.3854502  -8.0241920  -8.0057663
#> 48 -19.2373557  -5.1571791  -5.1763615 -15.5578741  -5.1586521  -5.1636874
#> 49   5.2129174   7.9481503   7.9528420   2.6432805   7.9401317   7.9483231
#> 50 -10.3537501  -4.3196547  -4.3043669  -7.9318404  -4.3057804  -4.3098124
#>             X6
#> 1    2.1953168
#> 2    5.7211606
#> 3   -3.3686955
#> 4   -1.7997608
#> 5    2.1028246
#> 6    9.2276743
#> 7   -3.3652029
#> 8    6.2976619
#> 9    1.1236072
#> 10   0.4084809
#> 11   6.0493588
#> 12  -3.8940789
#> 13   0.8864765
#> 14   0.5202993
#> 15  -2.6603212
#> 16  -6.1766387
#> 17  -0.8588043
#> 18  -5.8783804
#> 19  -3.2837214
#> 20  -7.1556823
#> 21  -4.2918165
#> 22  -4.9812506
#> 23  -4.9095009
#> 24   4.4895464
#> 25  -0.9201315
#> 26  -2.8069963
#> 27  -5.7389165
#> 28  -1.2908283
#> 29   1.1474257
#> 30  -0.7361247
#> 31   5.7776312
#> 32  -5.1986632
#> 33  -1.2839230
#> 34  -0.8662764
#> 35   8.8099526
#> 36   2.4598045
#> 37 -11.4539332
#> 38   8.8360836
#> 39   6.6757191
#> 40   2.1637183
#> 41  -2.5432713
#> 42   9.5811605
#> 43   3.1412428
#> 44   4.5967759
#> 45  -1.0240244
#> 46  -2.6419291
#> 47  -1.3859016
#> 48 -15.5406155
#> 49   2.6150623
#> 50  -7.9190022
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 
#> -8.864856  5.944117  3.093732 -7.326660  5.937950  3.091396 -7.335465 
(dataAstar3 <- data.frame(t(replicate(50,simul_data_UniYX(dimX,Astar)))))
#>               Y           X1           X2            X3           X4
#> 1    6.45605325  -7.72092343   2.05280090   1.659167596  -7.70961024
#> 2   -2.59016484   6.13988685   2.83630002  -1.823902853   6.14495248
#> 3    8.83359863  -1.81620794   1.51797853   6.190841903  -1.83210808
#> 4    3.29512308  -6.38581761   0.71494462   0.009876283  -6.40458523
#> 5    1.97711600  -0.56987349  -7.25431231   5.790397059  -0.57897498
#> 6    7.27145644   6.60142720   6.25693441   5.037661304   6.59800647
#> 7   -4.36767797   4.31116645   0.65865130  -2.715965533   4.31395886
#> 8    4.05952869  -0.42672927   4.08922749   1.072914291  -0.40216811
#> 9   -6.08691712  -0.38887985   2.27881154  -7.095854873  -0.40581772
#> 10 -12.19508017  -4.21238159  -2.72590705 -10.597900914  -4.20196149
#> 11  -8.39438872  -3.29300471  -3.44890537  -6.377023305  -3.28525312
#> 12  -6.87785231   3.47883094  -2.31703819  -3.265631297   3.47027263
#> 13   9.15007977   6.43010881   7.49451530   5.840639596   6.44652528
#> 14  -7.85861217   1.58559066  -1.68296187  -5.485917215   1.59565367
#> 15   3.59322148  10.31306716   6.20687313   3.322716938  10.31696376
#> 16 -11.75945004 -15.63337891 -14.42225896  -7.211895473 -15.62265425
#> 17  -5.80451963  -9.33308238  -0.03722048  -8.724208611  -9.34561122
#> 18   0.08708589   4.96150698   2.89116089   0.121998020   4.95193555
#> 19  -2.89203618  -5.57226736   0.58197365  -4.983804951  -5.56548831
#> 20 -15.83072345   5.77349644   0.68996801 -12.116201463   5.76547741
#> 21  15.10923339   7.02924131   1.68110728  14.817026351   7.02327567
#> 22   6.82835260  -2.40130683   3.44512251   2.865434708  -2.40390633
#> 23  -6.02822915  -3.59055433  -9.47508543  -0.720710694  -3.61764045
#> 24  15.17965684  -7.68533548   1.98235335   9.038717794  -7.68675366
#> 25  -4.05172593  -3.16391585  -3.75300502  -2.384716858  -3.16936566
#> 26  -5.54315875  -4.25187046  -6.30741764  -2.259063577  -4.27092718
#> 27  11.75094632   2.07904404  13.01255998   2.811946747   2.09893141
#> 28 -14.01334701  -6.17431623   0.67212723 -15.316708958  -6.20275980
#> 29  -8.99063336  -6.86507206  -4.54755350  -7.538541793  -6.88050477
#> 30   8.81447365   1.25511307   4.69220398   5.283297087   1.25363298
#> 31 -14.33961780  -1.91855291  -5.41369092  -9.774254205  -1.92753106
#> 32 -10.24702306  -1.54718519  -3.99922939  -7.126495512  -1.55031091
#> 33 -19.81501496   0.63491533   0.61921430 -17.561836920   0.63081993
#> 34  14.67422731   4.19988324  13.10298903   6.349214554   4.20766267
#> 35  10.04505413  -0.86590004   2.77614135   6.773759338  -0.86537194
#> 36   8.59860328  -1.23694997   3.49033436   4.828603439  -1.22169291
#> 37  -3.15276509  -5.64024031  -3.32514934  -2.619864559  -5.63468531
#> 38  -6.42063843  -1.17556390  -6.16289695  -2.083810374  -1.15850606
#> 39  -2.20506053   1.38338307  -3.38541461   0.660211396   1.42140439
#> 40   2.44622532  -3.53427107   4.94508330  -2.639438145  -3.52831495
#> 41   2.38843693  -3.73002080  -3.73262367   2.775938288  -3.73867322
#> 42   1.93595513  -2.65691271   4.04687468  -1.640777702  -2.64689268
#> 43   3.64200569  -1.85684192  -3.48254971   4.738636874  -1.87174925
#> 44  -2.36209932  -0.05103672  -0.76159376  -1.363938132  -0.04101503
#> 45  -0.47475816   4.34365611  -3.51828606   3.477129296   4.32539387
#> 46   3.46545775  -9.10494508   4.51360088  -3.156259471  -9.10666930
#> 47   5.28931070   0.97272271   3.16015902   2.949235641   0.98743575
#> 48  -1.05073542  -7.40413004   3.00706774  -5.498130382  -7.40563502
#> 49   2.69425275   3.58981284   3.91783301   1.326677397   3.56472127
#> 50   4.47249547  -5.72967345  -7.70669290   6.384753517  -5.72116363
#>              X5           X6
#> 1    2.05256322   1.65575956
#> 2    2.79948409  -1.84562225
#> 3    1.52718624   6.20910133
#> 4    0.69450136   0.02371784
#> 5   -7.23631438   5.79156449
#> 6    6.22714042   5.04881386
#> 7    0.66884338  -2.72117378
#> 8    4.08879640   1.09518229
#> 9    2.28126864  -7.11386258
#> 10  -2.74377006 -10.61953181
#> 11  -3.44424627  -6.37562513
#> 12  -2.32638511  -3.27131031
#> 13   7.51029443   5.82573703
#> 14  -1.69029591  -5.46866352
#> 15   6.19286102   3.32157622
#> 16 -14.43462543  -7.20766761
#> 17  -0.02518918  -8.73627310
#> 18   2.90719220   0.12024893
#> 19   0.56750370  -4.98552862
#> 20   0.70361360 -12.10086358
#> 21   1.68714524  14.81370663
#> 22   3.42243109   2.86497123
#> 23  -9.46446636  -0.73867182
#> 24   2.00665946   9.05705643
#> 25  -3.75371417  -2.39410849
#> 26  -6.31787192  -2.23715563
#> 27  12.99660540   2.82052330
#> 28   0.68621196 -15.29697600
#> 29  -4.55563154  -7.49894033
#> 30   4.67893952   5.30304901
#> 31  -5.41081848  -9.75706490
#> 32  -3.98419399  -7.12617497
#> 33   0.60365021 -17.54551972
#> 34  13.10968737   6.35470124
#> 35   2.79434146   6.77953153
#> 36   3.50493314   4.82114555
#> 37  -3.32453399  -2.61973652
#> 38  -6.16340707  -2.08470242
#> 39  -3.39565207   0.64963833
#> 40   4.96249316  -2.64330379
#> 41  -3.73815715   2.79939160
#> 42   4.04530300  -1.65276657
#> 43  -3.46219574   4.73926044
#> 44  -0.78267233  -1.35166718
#> 45  -3.48402461   3.47256332
#> 46   4.51560241  -3.13930117
#> 47   3.17825642   2.93068541
#> 48   3.02919079  -5.48373119
#> 49   3.90724251   1.33642057
#> 50  -7.68792625   6.38469175
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 
#>  8.048918 -1.863209  3.396806  5.292576  1.222016  6.472522  8.374780 
(dataAstar4 <- data.frame(t(replicate(50,simul_data_UniYX(dimX,Astar)))))
#>               Y          X1           X2          X3          X4          X5
#> 1   -1.77641256   0.4115411  -4.56218387   1.1960630   1.1469775  -3.8244258
#> 2    6.23463660  -6.6214269  -1.90406933   5.1577506 -10.2696482  -5.5250943
#> 3    3.92750571  -1.7308594  -5.81644513   6.9667555  -4.1624704  -8.2406965
#> 4   -6.35550479 -10.8442057   0.84909304 -11.1301844 -11.0035509   0.6921580
#> 5    0.03934500   7.1224438  -2.48327899   4.1871260   1.3254061  -8.2675366
#> 6   -8.76393570   4.1389309  -7.63121843  -2.5707619   8.3126030  -3.4613935
#> 7   -3.15681221  -0.7275324  -2.77386926  -1.9111011  -6.2555757  -8.2926269
#> 8  -16.69884070  -7.6346939 -13.13031282 -11.8931888  -5.7002766 -11.1647894
#> 9   -9.85366863  -0.7986350  -0.45242987 -10.1459148  -1.1437113  -0.7661399
#> 10   0.86981247   1.8367643  -0.64387789   2.1514760   7.2307392   4.7351421
#> 11  -4.98100995  -4.3210230  -2.51261121  -5.1972853  -1.2382577   0.5518789
#> 12   3.39236286  12.7249841   8.59178696   2.8613925   3.3748790  -0.7397496
#> 13  -9.24669930  -5.9999891  -1.91644813 -10.4211616  -8.2571586  -4.1834643
#> 14  -7.67213791  -7.8192186  -9.71034165  -4.8660595  -2.2607823  -4.1514450
#> 15   5.15083788  -3.2306410  -1.27955434   4.8438674  -0.5473025   1.4275198
#> 16   4.55105251   1.8893215   3.26159366   3.2174976   2.5850351   3.9655831
#> 17  -5.10682149   3.5838682  -1.87645353  -2.4458349   8.4616320   2.9883012
#> 18  -4.25348491  11.2493504  -4.17417491   2.4407336  10.8734804  -4.5776181
#> 19  -1.77874566  -8.0800437   0.03121758  -4.8324338  -6.6778346   1.4399477
#> 20   3.94719798   3.5094585   4.87421271   2.3541850  -0.6256561   0.7581476
#> 21  -3.38430935  -1.2426808   2.02238166  -5.1678306  -2.0208851   1.2466016
#> 22  12.01818728  -2.3984843   5.57725709   7.8330968  -4.7644359   3.2072818
#> 23 -12.61279263  -2.2002954  -4.72330897 -11.0482930  -1.0509507  -3.5498907
#> 24   2.58737243   4.4235028  -0.22953556   4.5266906   7.2019308   2.5116740
#> 25  15.97726175  -6.3501656   0.69843740  13.3838505  -9.6078606  -2.5298185
#> 26   1.68174286   7.2695675  -4.47694941   7.4356358   2.2218331  -9.5370820
#> 27  -2.79320240  -0.8361479  -2.07808827  -1.7943265   1.6726314   0.4046458
#> 28  -5.73703342   6.1868408  -2.24172058  -2.0775173   6.3198682  -2.1009030
#> 29  -7.57971343  -4.6003839  -0.71122620  -8.6065908  -5.2255522  -1.2996793
#> 30  -1.12707391   1.7532217  -5.16358526   2.6833105  -0.8485092  -7.7438537
#> 31   4.97884536   7.3898760   5.48137075   4.6453851   3.9954249   2.0875971
#> 32  -3.32283981  -5.7531946  -5.54341622  -2.0128015  -2.2812141  -2.0824483
#> 33  -7.44583608  -5.5629710  -6.77146938  -5.5464499  -2.5387476  -3.7594876
#> 34  13.89482272  -0.7709002  -1.56453180  15.0184595  -1.3256778  -2.1179681
#> 35  15.74815708  10.8116611  16.51870248   9.7927376   6.1778806  11.9048088
#> 36   3.53857533   2.0655476   5.64687943   0.8404998  -4.5233691  -0.9312575
#> 37 -11.06599708  -6.3247983  -7.20999781  -9.1206737  -4.1197634  -5.0279389
#> 38   8.01005223   0.3586905   7.99392988   2.9533192  -2.0596482   5.5721603
#> 39   5.41332620   6.1042001   8.58111825   2.6136734   5.0801591   7.5529570
#> 40  -1.65249091   2.0396297  -1.10033292  -0.2636869  -3.4887021  -6.6242978
#> 41  -7.70172023  -6.0981797 -10.66654822  -3.2116036  -1.4287119  -6.0258243
#> 42  -0.24663541   9.1926888  -2.32932224   4.8401932  13.3426849   1.8314400
#> 43   3.02325240  -1.8942737  -0.94462164   2.8455628   0.1956076   1.1633373
#> 44   0.83584527  -2.0298302   5.85037437  -3.5373503  -3.1724998   4.7211671
#> 45   4.23863240   6.9834252  11.45786421  -0.3994674   8.3689005  12.8604890
#> 46   3.66876930   2.1291950   3.30798716   2.5405074   0.5618438   1.7142248
#> 47  -6.88855290 -10.2071499  -0.32659148 -10.5612882 -12.7536954  -2.8798488
#> 48  -7.49804213  -3.0446118  -5.78978609  -5.0111503  -4.5179280  -7.2471886
#> 49   1.55913083   7.5279643   3.72551815   2.1699637   1.2346973  -2.5608219
#> 50  -0.06908791  -5.8657802   4.49635208  -4.9897877  -3.1422002   7.2405862
#>             X6
#> 1    1.9220559
#> 2    1.4709387
#> 3    4.5682591
#> 4  -11.2923033
#> 5   -1.6072831
#> 6    1.6179475
#> 7   -7.3960035
#> 8   -9.9186209
#> 9  -10.4717593
#> 10   7.5494498
#> 11  -2.1254348
#> 12  -6.4679925
#> 13 -12.6679010
#> 14   0.7178852
#> 15   7.5365991
#> 16   3.9250053
#> 17   2.4212107
#> 18   2.0161586
#> 19  -3.4043756
#> 20  -1.7238248
#> 21  -5.9649290
#> 22   5.4366591
#> 23  -9.8774513
#> 24   7.2745009
#> 25  10.1233814
#> 26   2.3949084
#> 27   0.6862700
#> 28  -1.9519007
#> 29  -9.2217792
#> 30   0.1045063
#> 31   1.2522265
#> 32   1.4643159
#> 33  -2.5037214
#> 34  14.4615412
#> 35   5.2066172
#> 36  -5.7558748
#> 37  -6.9013042
#> 38   0.5304735
#> 39   1.5990711
#> 40  -5.7728470
#> 41   1.4254237
#> 42   8.9910707
#> 43   4.9453101
#> 44  -4.6734385
#> 45   1.0247105
#> 46   0.9741277
#> 47 -13.1119041
#> 48  -6.4902912
#> 49  -4.0928466
#> 50  -2.2526014
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"))
# }