joinet-package.html 9.98 KB
 Armin Rauschenberger committed Aug 09, 2019 1 2 3 4 5 6 7 8 9 10  Multivariate Elastic Net Regression — joinet-package • joinet  Armin Rauschenberger committed Nov 12, 2019 11   Armin Rauschenberger committed Aug 09, 2019 12 13 14 15 16   Armin Rauschenberger committed Nov 12, 2019 17   Armin Rauschenberger committed Aug 09, 2019 18 19 20   Armin Rauschenberger committed Nov 12, 2019 21 22   Armin Rauschenberger committed Aug 09, 2019 23 24 25 26   Armin Rauschenberger committed Nov 12, 2019 27 28 29   Armin Rauschenberger committed Aug 09, 2019 30 31 32 33 34 35 36 37   Armin Rauschenberger committed Nov 12, 2019 38   Armin Rauschenberger committed Aug 09, 2019 39 40 41 42 43 44 45 46 47 48   Armin Rauschenberger committed Nov 12, 2019 49   Armin Rauschenberger committed Aug 09, 2019 50 51 52 53 54 55 56 57 58 59   Armin Rauschenberger committed Nov 12, 2019 60   Armin Rauschenberger committed Aug 09, 2019 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 
 Armin Rauschenberger committed Nov 12, 2019 116   Armin Rauschenberger committed Aug 09, 2019 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 

The R package joinet implements multivariate ridge and lasso regression using stacked generalisation. This multivariate regression typically outperforms univariate regression at predicting correlated outcomes. It provides predictive and interpretable models in high-dimensional settings.

 Armin Rauschenberger committed Nov 12, 2019 136 137   Armin Rauschenberger committed Aug 09, 2019 138 139 140 

Details

Use function joinet for model fitting.  Armin Rauschenberger committed Nov 12, 2019 141 Type library(joinet) and then ?joinet or  Armin Rauschenberger committed Aug 09, 2019 142 143 help("joinet)" to open its help file.

See the vignette for further examples.  Armin Rauschenberger committed Nov 12, 2019 144 Type vignette("joinet") or browseVignettes("joinet")  Armin Rauschenberger committed Aug 09, 2019 145 146 147 148 149 150 151 152 153 154 155 to open the vignette.

References

Armin Rauschenberger and Enrico Glaab (2019). "joinet: predicting correlated outcomes jointly to improve clinical prognosis". Manuscript in preparation.

armin.rauschenberger@uni.lu

Examples

#--- data simulation --- n <- 50; p <- 100; q <- 3  Armin Rauschenberger committed Nov 12, 2019 156 157 X <- matrix(rnorm(n*p),nrow=n,ncol=p) Y <- replicate(n=q,expr=rnorm(n=n,mean=rowSums(X[,1:5])))  Armin Rauschenberger committed Aug 09, 2019 158 159 160 161 162 163 164 165 # n samples, p inputs, q outputs #--- model fitting --- object <- joinet(Y=Y,X=X) # slot "base": univariate # slot "meta": multivariate #--- make predictions ---  Armin Rauschenberger committed Nov 12, 2019 166 y_hat <- predict(object,newx=X)  Armin Rauschenberger committed Aug 09, 2019 167 168 169 170 # n x q matrix "base": univariate # n x q matrix "meta": multivariate #--- extract coefficients ---  Armin Rauschenberger committed Nov 12, 2019 171 coef <- coef(object)  Armin Rauschenberger committed Aug 09, 2019 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 # effects of inputs on outputs # q vector "alpha": intercepts # p x q matrix "beta": slopes #--- model comparison --- loss <- cv.joinet(Y=Y,X=X) # cross-validated loss # row "base": univariate # row "meta": multivariate
 Armin Rauschenberger committed Nov 12, 2019 193   Armin Rauschenberger committed Aug 09, 2019 194 195 196 197 198 199 
 Armin Rauschenberger committed Nov 12, 2019 208   Armin Rauschenberger committed Aug 09, 2019 209 210 211   Armin Rauschenberger committed Nov 12, 2019 212