joshday / SweepOperator.jl

Symmetric Sweep Operator

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SweepOperator

Build Test
CI codecov.io

The symmetric sweep operator is a powerful tool in computational statistics with uses in stepwise regression, conditional multivariate normal distributions, MANOVA, and more. This package exports a single function:

sweep!

sweep!(A, k ; inv=false)
sweep!(A, ks; inv=false)

Perform the sweep operation (or inverse sweep if inv=true) on symmetric matrix A on element k (or each element in ks). Only the upper triangle is read/swept.

Example:

x = randn(100, 10)
xtx = x'x
sweep!(xtx, 1)
sweep!(xtx, 1, true)

Details on Symmetric Sweeping:

Thank you to great notes provided by @Hua-Zhou

About

Symmetric Sweep Operator

License:Other


Languages

Language:Julia 100.0%