# univariate_regression: Perform Univariate Linear Regression Separately for Columns... In susieR: Sum of Single Effects Linear Regression

 univariate_regression R Documentation

## Perform Univariate Linear Regression Separately for Columns of X

### Description

This function performs the univariate linear regression y ~ x separately for each column x of X. Each regression is implemented using `.lm.fit()`. The estimated effect size and stardard error for each variable are outputted.

### Usage

```univariate_regression(
X,
y,
Z = NULL,
center = TRUE,
scale = FALSE,
return_residuals = FALSE
)
```

### Arguments

 `X` n by p matrix of regressors. `y` n-vector of response variables. `Z` Optional n by k matrix of covariates to be included in all regresions. If Z is not `NULL`, the linear effects of covariates are removed from y first, and the resulting residuals are used in place of y. `center` If `center = TRUE`, center X, y and Z. `scale` If `scale = TRUE`, scale X, y and Z. `return_residuals` Whether or not to output the residuals if Z is not `NULL`.

### Value

A list with two vectors containing the least-squares estimates of the coefficients (`betahat`) and their standard errors (`sebetahat`). Optionally, and only when a matrix of covariates `Z` is provided, a third vector `residuals` containing the residuals is returned.

### Examples

```set.seed(1)
n = 1000
p = 1000
beta = rep(0,p)
beta[1:4] = 1
X = matrix(rnorm(n*p),nrow = n,ncol = p)
X = scale(X,center = TRUE,scale = TRUE)
y = drop(X %*% beta + rnorm(n))
res = univariate_regression(X,y)
plot(res\$betahat/res\$sebetahat)

```

susieR documentation built on March 7, 2023, 6:11 p.m.