Internal soundgen function.
clumper(x, minLength, n = length(x))
a vector: anything that can be converted into an integer to call diff(): factors, integers, characters, booleans
the minimum length of a segment (interger or vector)
clumper makes sure each homogeneous segment in a sequence is at least
minLength long. Called by getIntegerRandomWalk(), getVocalFry(),
naiveBayes(), etc. Algorithm: find the epochs shorter than minLength, merge
max 1/4 of them with the largest neighbor, and repeat recursively until all
epochs are at least minLength long. minLength can be a vector, in which case
it is assumed to change over time.
Returns the original sequence x transformed to homogeneous segments of required length, with the original class (e.g. character or factor).
s = c(1,3,2,2,2,0,0,4,4,1,1,1,1,1,3,3) soundgen:::clumper(s, 2) soundgen:::clumper(s, 3) soundgen:::clumper(1:5, 10) soundgen:::clumper(c('a','a','a','b','b','c','c','c','a','c'), 3) soundgen:::clumper(x = c(1,2,1,2,1,1,1,1,3,1), minLength = c(1, 1, 1, 3)) soundgen:::clumper(as.factor(c('A','B','B','C')), 2)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.