segmentation.OU.specialCase.lasso
performs the segmentation using a
lasso regression to select for the edges where the shifts are added.
segmentation.OU.specialCase.lasso(
phylo,
nbr_of_shifts,
D,
Xp,
penscale = rep(1, (nrow(phylo$edge) + 1)),
...
)
List containing : beta_0 : the optimal value at the root shifts : list containing the computed tau and delta costs : vector of costs
a phylogenetic tree
Number of shifts on the phylogeny allowed
This function re-write the sum of costs to be minimized as a least squares
regression problem, and uses a lasso regression to solve it. It uses
functions incidence.matrix.full
to express the problem as a
linear model.