aovFbyrow: calculate aov F-statistic for each row of a matrix In hddplot: Use Known Groups in High-Dimensional Data to Derive Scores for Plots

Description

Returns on aov F-statistic for each row of `x`

Usage

 `1` ```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 `orderFeatures`
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18``` ```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 } ```