swh:1:snp:a4c99a50dc49f82b591f268001b320f8c3ca0041
Tip revision: dc000f2a5f006d137f66716b086025d618bf8306 authored by John M Chambers on 14 July 2008, 00:00:00 UTC
version 1.0-5
version 1.0-5
Tip revision: dc000f2
IQreplace.R
newIQ <- function(nData = 1000, probs = seq(0, 1, 0.25))
list(nData = nData, probs = probs,
dataBuf = numeric(0), qBuf = numeric(0))
`addData<-` <- function(IQ, update = FALSE, value) {
n <- length(value);
if(update || (n + length(IQ$dataBuf) > IQ$nData))
recompute(IQ, value)
else {
IQ$dataBuf <- c(IQ$dataBuf, value)
IQ
}
}
recompute <- function(IQ, newdata = numeric(0)) {
IQ$qBuf <- doQuantile(qBuf, c(IQ$dataBuf, newdata), IQ$probs)
IQ$dataBuf <- numeric(0)
IQ
}
getQ <- function(IQ) {
if(length(IQ$dataBuf) > 0)
doQuantile(IQ$qbuf, IQ$dataBuf, IQ$probs)
else
IQ$qBuf
}