Gitlab is now using https://gitlab.lcsb.uni.lu as it's primary address. Please update your bookmarks. FAQ.

Commit 1740863b authored by Armin Rauschenberger's avatar Armin Rauschenberger
Browse files

automation

parent 05b38bf4
...@@ -6,7 +6,7 @@ Depends: R (>= 3.0.0) ...@@ -6,7 +6,7 @@ Depends: R (>= 3.0.0)
Imports: glmnet, palasso, cornet Imports: glmnet, palasso, cornet
Suggests: knitr, testthat, MASS Suggests: knitr, testthat, MASS
Enhances: spls, SiER, MRCE Enhances: spls, SiER, MRCE
Authors@R: person("Armin","Rauschenberger",email="a.rauschenberger@vumc.nl",role=c("aut","cre")) Authors@R: person("Armin","Rauschenberger",email="armin.rauschenberger@uni.lu",role=c("aut","cre"))
VignetteBuilder: knitr VignetteBuilder: knitr
License: GPL-3 License: GPL-3
LazyData: true LazyData: true
......
#.loss <- get(".loss",envir=asNamespace("palasso")) # import unexported functions:
#.folds <- get(".folds",envir=asNamespace("palasso")) # FUNCTION <- get("FUNCTION",envir=asNamespace("PACKAGE"))
#.check <- get(".check",envir=asNamespace("cornet"))
#--- Main function ------------------------------------------------------------- #--- Main function -------------------------------------------------------------
#' @export #' @export
#' @aliases joinet-package
#' @title #' @title
#' Multivariate Elastic Net Regression #' Multivariate Elastic Net Regression
#' #'
......
#' @name joinet-package
#' @keywords documentation
#' @docType package
#'
#' @title
#' Multivariate Elastic Net Regression
#'
#' @description
#' The R package \code{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.
#'
#' @details
#' Use function \code{\link{joinet}} for model fitting.
#' Type \code{library(joinet)} and then \code{?joinet} or
#' \code{help("joinet)"} to open its help file.
#'
#' See the vignette for further examples.
#' Type \code{vignette("joinet")} or \code{browseVignettes("joinet")}
#' to open the vignette.
#'
#' @references
#' Armin Rauschenberger and Enrico Glaab (2019).
#' "joinet: predicting correlated outcomes jointly to improve clinical prognosis".
#' \emph{Manuscript in preparation}.
#'
#' \email{armin.rauschenberger@uni.lu}
#'
#' @examples
#' #--- data simulation ---
#' n <- 50; p <- 100; q <- 3
#' X <- matrix(rnorm(n*p),nrow=n,ncol=p)
#' Y <- replicate(n=q,expr=rnorm(n=n,mean=rowSums(X[,1:5])))
#' # n samples, p inputs, q outputs
#'
#' #--- model fitting ---
#' object <- joinet(Y=Y,X=X)
#' # slot "base": univariate
#' # slot "meta": multivariate
#'
#' #--- make predictions ---
#' y_hat <- predict(object,newx=X)
#' # n x q matrix "base": univariate
#' # n x q matrix "meta": multivariate
#'
#' #--- extract coefficients ---
#' coef <- coef(object)
#' # 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
#'
NULL
...@@ -17,7 +17,7 @@ navbar: ...@@ -17,7 +17,7 @@ navbar:
- text: "functions" - text: "functions"
href: reference/index.html href: reference/index.html
- text: "vignette" - text: "vignette"
href: articles/vignette.html href: articles/joinet.html
- text: "article" - text: "article"
href: articles/article.html href: articles/article.html
- text: "news" - text: "news"
...@@ -29,12 +29,11 @@ navbar: ...@@ -29,12 +29,11 @@ navbar:
href: https://cran.r-project.org/package=joinet href: https://cran.r-project.org/package=joinet
reference: reference:
- title: "User functions" - title: "Functions"
contents: contents:
- joinet - joinet
- predict.joinet - predict.joinet
- coef.joinet - coef.joinet
- weights.joinet - weights.joinet
- title: "Internal functions"
contents:
- cv.joinet - cv.joinet
- joinet-package
# Notes # Notes
- Early update because of manuscript submission (examples, vignettes). Please accept ::: calls to "palasso" and "cornet",
as maintainer email changes for all packages.
- The maintainer email will change to armin.rauschenberger@uni.lu. \ No newline at end of file
\ No newline at end of file
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
<a href="../reference/index.html">functions</a> <a href="../reference/index.html">functions</a>
</li> </li>
<li> <li>
<a href="../articles/vignette.html">vignette</a> <a href="../articles/joinet.html">vignette</a>
</li> </li>
<li> <li>
<a href="../articles/article.html">article</a> <a href="../articles/article.html">article</a>
......
...@@ -70,7 +70,7 @@ ...@@ -70,7 +70,7 @@
<a href="../reference/index.html">functions</a> <a href="../reference/index.html">functions</a>
</li> </li>
<li> <li>
<a href="../articles/vignette.html">vignette</a> <a href="../articles/joinet.html">vignette</a>
</li> </li>
<li> <li>
<a href="../articles/article.html">article</a> <a href="../articles/article.html">article</a>
...@@ -114,7 +114,7 @@ ...@@ -114,7 +114,7 @@
<ul> <ul>
<li><a href="article.html">Multivariate Elastic Net Regression</a></li> <li><a href="article.html">Multivariate Elastic Net Regression</a></li>
<li><a href="vignette.html">Multivariate Elastic Net Regression</a></li> <li><a href="joinet.html">Multivariate Elastic Net Regression</a></li>
</ul> </ul>
</div> </div>
</div> </div>
......
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
<a href="../reference/index.html">functions</a> <a href="../reference/index.html">functions</a>
</li> </li>
<li> <li>
<a href="../articles/vignette.html">vignette</a> <a href="../articles/joinet.html">vignette</a>
</li> </li>
<li> <li>
<a href="../articles/article.html">article</a> <a href="../articles/article.html">article</a>
...@@ -77,8 +77,8 @@ ...@@ -77,8 +77,8 @@
<h1>Multivariate Elastic Net Regression</h1> <h1>Multivariate Elastic Net Regression</h1>
<small class="dont-index">Source: <a href="https://github.com/rauschenberger/joinet/blob/master/vignettes/vignette.Rmd"><code>vignettes/vignette.Rmd</code></a></small> <small class="dont-index">Source: <a href="https://github.com/rauschenberger/joinet/blob/master/vignettes/joinet.Rmd"><code>vignettes/joinet.Rmd</code></a></small>
<div class="hidden name"><code>vignette.Rmd</code></div> <div class="hidden name"><code>joinet.Rmd</code></div>
</div> </div>
......
...@@ -70,7 +70,7 @@ ...@@ -70,7 +70,7 @@
<a href="reference/index.html">functions</a> <a href="reference/index.html">functions</a>
</li> </li>
<li> <li>
<a href="articles/vignette.html">vignette</a> <a href="articles/joinet.html">vignette</a>
</li> </li>
<li> <li>
<a href="articles/article.html">article</a> <a href="articles/article.html">article</a>
......
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
<a href="reference/index.html">functions</a> <a href="reference/index.html">functions</a>
</li> </li>
<li> <li>
<a href="articles/vignette.html">vignette</a> <a href="articles/joinet.html">vignette</a>
</li> </li>
<li> <li>
<a href="articles/article.html">article</a> <a href="articles/article.html">article</a>
......
...@@ -70,7 +70,7 @@ ...@@ -70,7 +70,7 @@
<a href="../reference/index.html">functions</a> <a href="../reference/index.html">functions</a>
</li> </li>
<li> <li>
<a href="../articles/vignette.html">vignette</a> <a href="../articles/joinet.html">vignette</a>
</li> </li>
<li> <li>
<a href="../articles/article.html">article</a> <a href="../articles/article.html">article</a>
......
...@@ -3,5 +3,5 @@ pkgdown: 1.3.0 ...@@ -3,5 +3,5 @@ pkgdown: 1.3.0
pkgdown_sha: ~ pkgdown_sha: ~
articles: articles:
article: article.html article: article.html
vignette: vignette.html joinet: joinet.html
...@@ -75,7 +75,7 @@ the coefficients from the base learners.)" /> ...@@ -75,7 +75,7 @@ the coefficients from the base learners.)" />
<a href="../reference/index.html">functions</a> <a href="../reference/index.html">functions</a>
</li> </li>
<li> <li>
<a href="../articles/vignette.html">vignette</a> <a href="../articles/joinet.html">vignette</a>
</li> </li>
<li> <li>
<a href="../articles/article.html">article</a> <a href="../articles/article.html">article</a>
......
...@@ -73,7 +73,7 @@ ...@@ -73,7 +73,7 @@
<a href="../reference/index.html">functions</a> <a href="../reference/index.html">functions</a>
</li> </li>
<li> <li>
<a href="../articles/vignette.html">vignette</a> <a href="../articles/joinet.html">vignette</a>
</li> </li>
<li> <li>
<a href="../articles/article.html">article</a> <a href="../articles/article.html">article</a>
......
...@@ -70,7 +70,7 @@ ...@@ -70,7 +70,7 @@
<a href="../reference/index.html">functions</a> <a href="../reference/index.html">functions</a>
</li> </li>
<li> <li>
<a href="../articles/vignette.html">vignette</a> <a href="../articles/joinet.html">vignette</a>
</li> </li>
<li> <li>
<a href="../articles/article.html">article</a> <a href="../articles/article.html">article</a>
...@@ -119,7 +119,7 @@ ...@@ -119,7 +119,7 @@
<tbody> <tbody>
<tr> <tr>
<th colspan="2"> <th colspan="2">
<h2 id="section-user-functions" class="hasAnchor"><a href="#section-user-functions" class="anchor"></a>User functions</h2> <h2 id="section-functions" class="hasAnchor"><a href="#section-functions" class="anchor"></a>Functions</h2>
<p class="section-desc"></p> <p class="section-desc"></p>
</th> </th>
</tr> </tr>
...@@ -147,20 +147,18 @@ ...@@ -147,20 +147,18 @@
<p><code><a href="weights.joinet.html">weights(<i>&lt;joinet&gt;</i>)</a></code> </p> <p><code><a href="weights.joinet.html">weights(<i>&lt;joinet&gt;</i>)</a></code> </p>
</td> </td>
<td><p>Extract Weights</p></td> <td><p>Extract Weights</p></td>
</tr> </tr><tr>
</tbody><tbody>
<tr>
<th colspan="2">
<h2 id="section-internal-functions" class="hasAnchor"><a href="#section-internal-functions" class="anchor"></a>Internal functions</h2>
<p class="section-desc"></p>
</th>
</tr>
<tr>
<td> <td>
<p><code><a href="cv.joinet.html">cv.joinet()</a></code> </p> <p><code><a href="cv.joinet.html">cv.joinet()</a></code> </p>
</td> </td>
<td><p>Model comparison</p></td> <td><p>Model comparison</p></td>
</tr><tr>
<td>
<p><code><a href="joinet-package.html">joinet-package</a></code> </p>
</td>
<td><p>Multivariate Elastic Net Regression</p></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
...@@ -169,8 +167,7 @@ ...@@ -169,8 +167,7 @@
<div class="col-md-3 hidden-xs hidden-sm" id="sidebar"> <div class="col-md-3 hidden-xs hidden-sm" id="sidebar">
<h2>Contents</h2> <h2>Contents</h2>
<ul class="nav nav-pills nav-stacked"> <ul class="nav nav-pills nav-stacked">
<li><a href="#section-user-functions">User functions</a></li> <li><a href="#section-functions">Functions</a></li>
<li><a href="#section-internal-functions">Internal functions</a></li>
</ul> </ul>
</div> </div>
</div> </div>
......
<!-- Generated by pkgdown: do not edit by hand -->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Multivariate Elastic Net Regression — joinet-package • joinet</title>
<!-- jquery -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script>
<!-- Bootstrap -->
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootswatch/3.3.7/spacelab/bootstrap.min.css" rel="stylesheet" crossorigin="anonymous" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha256-U5ZEeKfGNOja007MMD3YBI0A3OSZOQbeG6z2f2Y0hu8=" crossorigin="anonymous"></script>
<!-- Font Awesome icons -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css" integrity="sha256-eZrrJcwDc/3uDhsdt61sL2oOBY362qM3lon1gyExkL0=" crossorigin="anonymous" />
<!-- clipboard.js -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.4/clipboard.min.js" integrity="sha256-FiZwavyI2V6+EXO1U+xzLG3IKldpiTFf3153ea9zikQ=" crossorigin="anonymous"></script>
<!-- sticky kit -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/sticky-kit/1.1.3/sticky-kit.min.js" integrity="sha256-c4Rlo1ZozqTPE2RLuvbusY3+SU1pQaJC0TjuhygMipw=" crossorigin="anonymous"></script>
<!-- pkgdown -->
<link href="../pkgdown.css" rel="stylesheet">
<script src="../pkgdown.js"></script>
<meta property="og:title" content="Multivariate Elastic Net Regression — joinet-package" />
<meta property="og:description" content="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." />
<meta name="twitter:card" content="summary" />
<!-- mathjax -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js" integrity="sha256-nvJJv9wWKEm88qvoQl9ekL2J+k/RWIsaSScxxlsrv8k=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/config/TeX-AMS-MML_HTMLorMML.js" integrity="sha256-84DKXVJXs0/F8OTMzX4UR909+jtl4G7SPypPavF+GfA=" crossorigin="anonymous"></script>
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body>
<div class="container template-reference-topic">
<header>
<div class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<span class="navbar-brand">
<a class="navbar-link" href="../index.html">joinet</a>
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.0.2</span>
</span>
</div>
<div id="navbar" class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li>
<a href="../reference/index.html">functions</a>
</li>
<li>
<a href="../articles/joinet.html">vignette</a>
</li>
<li>
<a href="../articles/article.html">article</a>
</li>
<li>
<a href="../news/index.html">news</a>
</li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li>
<a href="https://github.com/rauschenberger/joinet">
<span class="fa fa-github"></span>
</a>
</li>
<li>
<a href="https://cran.r-project.org/package=joinet">
<span class="fa fa-download"></span>
</a>
</li>
</ul>
</div><!--/.nav-collapse -->
</div><!--/.container -->
</div><!--/.navbar -->
</header>
<div class="row">
<div class="col-md-9 contents">
<div class="page-header">
<h1>Multivariate Elastic Net Regression</h1>
<small class="dont-index">Source: <a href='https://github.com/rauschenberger/joinet/blob/master/R/pkgname.R'><code>R/pkgname.R</code></a></small>
<div class="hidden name"><code>joinet-package.Rd</code></div>
</div>
<div class="ref-description">
<p>The R package <code>joinet</code> 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.</p>
</div>
<h2 class="hasAnchor" id="details"><a class="anchor" href="#details"></a>Details</h2>
<p>Use function <code><a href='joinet.html'>joinet</a></code> for model fitting.
Type <code><a href='https://www.rdocumentation.org/packages/base/topics/library'>library(joinet)</a></code> and then <code><a href='joinet.html'>?joinet</a></code> or
<code>help("joinet)"</code> to open its help file.</p>
<p>See the vignette for further examples.
Type <code><a href='../articles/joinet.html'>vignette("joinet")</a></code> or <code><a href='https://www.rdocumentation.org/packages/utils/topics/browseVignettes'>browseVignettes("joinet")</a></code>
to open the vignette.</p>
<h2 class="hasAnchor" id="references"><a class="anchor" href="#references"></a>References</h2>
<p>Armin Rauschenberger and Enrico Glaab (2019).
"joinet: predicting correlated outcomes jointly to improve clinical prognosis".
<em>Manuscript in preparation</em>.</p>
<p><a href='mailto:armin.rauschenberger@uni.lu'>armin.rauschenberger@uni.lu</a></p>
<h2 class="hasAnchor" id="examples"><a class="anchor" href="#examples"></a>Examples</h2>
<pre class="examples"><div class='input'><span class='co'>#--- data simulation ---</span>
<span class='no'>n</span> <span class='kw'>&lt;-</span> <span class='fl'>50</span>; <span class='no'>p</span> <span class='kw'>&lt;-</span> <span class='fl'>100</span>; <span class='no'>q</span> <span class='kw'>&lt;-</span> <span class='fl'>3</span>
<span class='no'>X</span> <span class='kw'>&lt;-</span> <span class='fu'><a href='https://www.rdocumentation.org/packages/base/topics/matrix'>matrix</a></span>(<span class='fu'><a href='https://www.rdocumentation.org/packages/stats/topics/Normal'>rnorm</a></span>(<span class='no'>n</span>*<span class='no'>p</span>),<span class='kw'>nrow</span><span class='kw'>=</span><span class='no'>n</span>,<span class='kw'>ncol</span><span class='kw'>=</span><span class='no'>p</span>)
<span class='no'>Y</span> <span class='kw'>&lt;-</span> <span class='fu'><a href='https://www.rdocumentation.org/packages/base/topics/lapply'>replicate</a></span>(<span class='kw'>n</span><span class='kw'>=</span><span class='no'>q</span>,<span class='kw'>expr</span><span class='kw'>=</span><span class='fu'><a href='https://www.rdocumentation.org/packages/stats/topics/Normal'>rnorm</a></span>(<span class='kw'>n</span><span class='kw'>=</span><span class='no'>n</span>,<span class='kw'>mean</span><span class='kw'>=</span><span class='fu'><a href='https://www.rdocumentation.org/packages/base/topics/colSums'>rowSums</a></span>(<span class='no'>X</span>[,<span class='fl'>1</span>:<span class='fl'>5</span>])))
<span class='co'># n samples, p inputs, q outputs</span>
<span class='co'>#--- model fitting ---</span>
<span class='no'>object</span> <span class='kw'>&lt;-</span> <span class='fu'><a href='joinet.html'>joinet</a></span>(<span class='kw'>Y</span><span class='kw'>=</span><span class='no'>Y</span>,<span class='kw'>X</span><span class='kw'>=</span><span class='no'>X</span>)
<span class='co'># slot "base": univariate</span>
<span class='co'># slot "meta": multivariate</span>
<span class='co'>#--- make predictions ---</span>
<span class='no'>y_hat</span> <span class='kw'>&lt;-</span> <span class='fu'><a href='https://www.rdocumentation.org/packages/stats/topics/predict'>predict</a></span>(<span class='no'>object</span>,<span class='kw'>newx</span><span class='kw'>=</span><span class='no'>X</span>)
<span class='co'># n x q matrix "base": univariate</span>
<span class='co'># n x q matrix "meta": multivariate </span>
<span class='co'>#--- extract coefficients ---</span>
<span class='no'>coef</span> <span class='kw'>&lt;-</span> <span class='fu'><a href='https://www.rdocumentation.org/packages/stats/topics/coef'>coef</a></span>(<span class='no'>object</span>)
<span class='co'># effects of inputs on outputs</span>
<span class='co'># q vector "alpha": intercepts</span>
<span class='co'># p x q matrix "beta": slopes</span>
<span class='co'>#--- model comparison ---</span>
<span class='no'>loss</span> <span class='kw'>&lt;-</span> <span class='fu'><a href='cv.joinet.html'>cv.joinet</a></span>(<span class='kw'>Y</span><span class='kw'>=</span><span class='no'>Y</span>,<span class='kw'>X</span><span class='kw'>=</span><span class='no'>X</span>)
<span class='co'># cross-validated loss</span>
<span class='co'># row "base": univariate</span>
<span class='co'># row "meta": multivariate</span></div></pre>
</div>
<div class="col-md-3 hidden-xs hidden-sm" id="sidebar">
<h2>Contents</h2>
<ul class="nav nav-pills nav-stacked">
<li><a href="#details">Details</a></li>
<li><a href="#references">References</a></li>
<li><a href="#examples">Examples</a></li>
</ul>
</div>
</div>
<footer>
<div class="copyright">
<p>Developed by <a href='https://rauschenberger.github.io'>Armin Rauschenberger</a>.</p>
</div>
<div class="pkgdown">
<p>Site built with <a href="https://pkgdown.r-lib.org/">pkgdown</a> 1.3.0.</p>
</div>
</footer>
</div>
</body>
</html>
...@@ -73,7 +73,7 @@ ...@@ -73,7 +73,7 @@
<a href="../reference/index.html">functions</a> <a href="../reference/index.html">functions</a>
</li> </li>
<li> <li>
<a href="../articles/vignette.html">vignette</a> <a href="../articles/joinet.html">vignette</a>
</li> </li>
<li> <li>
<a href="../articles/article.html">article</a> <a href="../articles/article.html">article</a>
......
...@@ -73,7 +73,7 @@ ...@@ -73,7 +73,7 @@
<a href="../reference/index.html">functions</a> <a href="../reference/index.html">functions</a>
</li> </li>
<li> <li>
<a href="../articles/vignette.html">vignette</a> <a href="../articles/joinet.html">vignette</a>
</li> </li>
<li>