aovFbyrow: calculate aov F-statistic for each row of a matrix

aovFbyrowR Documentation

calculate aov F-statistic for each row of a matrix

Description

Returns on aov F-statistic for each row of x

Usage

aovFbyrow(x=matrix(rnorm(1000), ncol=20), cl = factor(rep(1:3, c(7,9,4))))

Arguments

x

features by observations matrix

cl

factor that classifies the values in each row

Details

This uses the functions qr() and qr.qty() for the main part of the calculation, for handling the calculations efficently

Value

one F-statistic for each row of x

Author(s)

John Maindonald

See Also

See also orderFeatures

Examples

mat <- matrix(rnorm(1000), ncol=20)
cl <- factor(rep(1:3, c(7,9,4)))
Fstats <- aovFbyrow(x = mat, cl = cl)

## The function is currently defined as
aovFbyrow <-
function(x=matrix(rnorm(1000), ncol=20),
         cl=factor(rep(1:3, c(7,9,4)))){
    y <- t(x)
    qr.obj <- qr(model.matrix(~cl))
    qty.obj <- qr.qty(qr.obj,y)
    tab <- table(factor(cl))
    dfb <- length(tab)-1
    dfw <- sum(tab)-dfb-1
    ms.between <- apply(qty.obj[2:(dfb+1), , drop=FALSE]^2, 2, sum)/dfb
    ms.within <- apply(qty.obj[-(1:(dfb+1)), , drop=FALSE]^2, 2, sum)/dfw
    Fstat <- ms.between/ms.within
  }

hddplot documentation built on Sept. 14, 2023, 5:07 p.m.