Compute the prox for the sorted L1 norm. That is, given a vector \(x\)
and a decreasing vector \(\lambda\), compute the unique value of \(y\)
minimizing
$$\frac{1}{2} \Vert x - y \Vert_2^2 +
\sum_{i=1}^n \lambda_i |x|_{(i)}.$$
At present, two methods for computing the sorted L1 prox are
supported. By default, we use a fast custom C implementation. Since SLOPE
can be viewed as an isotonic regression problem, the prox can also be
computed using the isotone
package. This option is provided
primarily for testing.
prox_sorted_L1(x, lambda, method = c("c", "isotone"))
The solution vector \(y\).
input vector
vector of \(\lambda\)'s, sorted in decreasing order
underlying prox implementation, either 'c' or 'isotone' (see Details)
This function has been adapted (with only cosmetic changes) from
the R package SLOPE
version 0.1.3, due to this function being
deprecated and defunct in SLOPE
versions which are newer than 0.1.3.