R/SQ.R

Defines functions SQ

Documented in SQ

SQ <-
function(comm, Sigma = NULL, type=c("similarity", "dissimilarity")){

    type <- type[1]
    if(!type%in%c("similarity", "dissimilarity"))
        stop("Incorrect definition of parameter type")
    if (!is.null(Sigma)){
    if (type=="similarity")
    return(1-as.matrix(disc(as.data.frame(t(comm)), as.dist(sqrt(2*(1-Sigma)))))^2/2)
    else
     return(disc(as.data.frame(t(comm)), as.dist(sqrt(2*(1-Sigma))))^2/2)
    }
    else{
    if (type=="similarity")
    return(1-as.matrix(disc(as.data.frame(t(comm))))^2/2)
    else
    return(disc(as.data.frame(t(comm)))^2/2)
    }
}

Try the adiv package in your browser

Any scripts or data that you put into this service are public.

adiv documentation built on Oct. 6, 2022, 5:08 p.m.