R/soft_th.R

## function soft-thresholding

soft_th <- function(X, lambda){
  
  # assume X is a vector
  result <- X
  index1 <- which(X > lambda)
  result[index1] <- X[index1] - lambda
  index2 <- which(X < -lambda)
  result[index2] <- X[index2] + lambda
  index0 <- which(X <= lambda & X >= -lambda)
  result[index0] <- 0
  
  return(result)
}
ZhengguoGu/RegularizedSCA documentation built on July 4, 2019, 2:46 p.m.