# Normalizing the Turbulence index to match other indices

I calculated the index of complexity, longitudinal entropy, and turbulence for my data. The first two indicators vary from 0 to 1, whereas turbulence varies between 1 and 16 for one dataset and between 1 and 11 for the other. Is it possible to "normalize" the turbulence somehow, so that it will fit the same scale as the other indicators?

• Can you say more about your situation, your data, your models & your goals here? It may well be possible to advise you, but this seems rather sparse to me. – gung - Reinstate Monica Apr 9 '16 at 20:18
• @gung - Thank you for your comment. The answer below (by Gilbert) was able to resolve the issue. – Thomas H. Espy Apr 11 '16 at 18:22

The turbulence takes values between 1 and a maximum that is reached for a sequence with a different state at each position or, when the sequence length exceeds the size of the alphabet, for a sequence made by repeating the alphabet up to the sequence length. (See Elzinga (2006) ).

So we can normalize the Turbulence by first subtracting 1 and then divide by the maximum value that we would obtain by computing the Turbulence for a sequence as described above. I illustrate below using the mvad data that ships with TraMineR.

library(TraMineR)

nrep <- ceiling(maxlength/length(alph))

turb.seq <- seqdef(t(rep(alph,nrep)[1:maxlength]))
(maxT <- seqST(turb.seq))


Since version TraMineR v 1.8-12, the seqST function has an argument norm that allows to ask for the normalized index:
normturb <- seqST(mvad.seq, norm=TRUE)