swh:1:snp:3a44eb759780145deea094ac2a25c5049546a085
Raw File
Tip revision: b670a15ed46f9ec07083d3c6c338a20fd3b3e3b9 authored by Han Lin Shang on 21 April 2019, 14:10:06 UTC
version 5.5
Tip revision: b670a15
Qn.R
Qn <- function(x)
{
    n <- length(x)
    diffs <- outer(x, x, "-")
    diffs <- diffs[!lower.tri(diffs, diag = TRUE)]
    qn <- 2.2219 * quantile(abs(diffs), 0.25)
    if (n == 2)
        dn <- 0.399
    else if (n == 3)
        dn <- 0.994
    else if (n == 4)
        dn <- 0.512
    else if (n == 5)
        dn <- 0.844
    else if (n == 6)
        dn <- 0.611
    else if (n == 7)
        dn <- 0.857
    else if (n == 8)
        dn <- 0.669
    else if (n == 9)
        dn <- 0.872
    else if (n%%2 == 1)
        dn <- n/(n + 1.4)
    else dn <- n/(n + 3.8)
    return(dn * qn)
}
back to top