plm: Profile Boosting for Linear Models.

View source: R/plm.R

plmR Documentation

Profile Boosting for Linear Models.

Description

plm inherits the usage of the built-in function lm.

Usage

plm(
  formula,
  data,
  subset,
  weights,
  na.action,
  method = "qr",
  model = TRUE,
  x = FALSE,
  y = FALSE,
  qr = TRUE,
  singular.ok = TRUE,
  contrasts = NULL,
  offset,
  ...,
  stopFun = "EBIC",
  keep = NULL,
  maxK = NULL,
  verbose = FALSE
)

plm.fit(
  x,
  y,
  offset = NULL,
  method = "qr",
  tol = 1e-07,
  singular.ok = TRUE,
  ...,
  stopFun = "EBIC",
  keep = NULL,
  maxK = NULL,
  verbose = FALSE
)

Arguments

formula

Parameter passed to lm.

data

Parameter passed to lm.

subset

Parameter passed to lm.

weights

Parameter passed to lm.

na.action

Parameter passed to lm.

method

Parameter passed to lm.

model

Parameter passed to lm.

x

Parameter passed to lm.fit.

y

Parameter passed to lm.fit.

qr

Parameter passed to lm.

singular.ok

Parameter passed to lm.

contrasts

Parameter passed to lm.

offset

Parameter passed to lm or lm.fit.

...

Parameters passed to lm or lm.fit.

stopFun

Parameter passed to pboost.

keep

Parameter passed to pboost.

maxK

Parameter passed to pboost.

verbose

Parameter passed to pboost.

tol

Parameter passed to lm.fit.

Details

plm is an equivalent implementation to the sequential lasso method proposed by Luo and Chen(2014, \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1080/01621459.2013.877275")}).

Value

A lm model object fitted on the selected features.

References

  • Zengchao Xu, Shan Luo and Zehua Chen (2022). Partial profile score feature selection in high-dimensional generalized linear interaction models. Statistics and Its Interface. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.4310/21-SII706")}

  • Shan Luo and Zehua Chen (2014). A Sequential Lasso Method for Feature Selection with Ultra-High Dimensional Feature Space. Journal of the American Statistical Association, 109(507):223–232. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1080/01621459.2013.877275")}

Examples

set.seed(2026)
n <- 300
p <- 200
x <- matrix(rnorm(n*p), n)

eta <- drop( x[, 1:3] %*% runif(3, 1.0, 1.5) )
y <- rnorm(n, eta, sd=sd(eta))
DF <- data.frame(y, x)

plm(y ~ ., DF, verbose=TRUE)
plm(y ~ ., DF, stopFun=BIC, verbose=TRUE)
pboost(x, y, lm, residuals, verbose=TRUE)

flm(y ~ ., DF, verbose=TRUE)
flm(y ~ ., DF, stopFun=BIC, verbose=TRUE)
frs(x, y, lm, verbose=TRUE)


pboost documentation built on May 24, 2026, 9:08 a.m.