Ниже я проиллюстрирую, как поступить, используя первые два предложения каждого из трех текстов данных вашего примера. Я предполагал, что предложения разделяются точкой, но не обрабатывал запятые. Таким образом, вы можете сначала удалить запятые. Кроме того, в приведенном ниже коде я использую tolower
, чтобы игнорировать заглавные буквы. Мы просто используем функцию seqdecomp
TraMineR
, чтобы преобразовать ваш текст в форму таблицы, а затем вводим таблицу в seqdef
.
text = c(
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat",
"Tristique nulla aliquet enim tortor at auctor urna nunc Magna fermentum iaculis eu non diam phasellus vestibulum",
"Quam adipiscing vitae proin sagittis nisl rhoncus mattis rhoncus Facilisi morbi tempus iaculis urna id"
)
library(TraMineR)
d.text <- seqdecomp(tolower(text), sep=" ")
s.text <- seqdef(d.text)
entr <- seqient(s.text)
cplx <- seqici(s.text)
turb <- seqST(s.text)
data.frame(entr,cplx,turb)
## Entropy C Turbulence
## [1] 0.8528759 0.9235128 35.98833
## [2] 0.6919821 0.8318546 17.00000
## [3] 0.6388399 0.7992746 14.80735
Здесь мы вычислили продольную энтропию, индекс сложности и турбулентность.
Нет никаких известных ограничений на размер алфавита для вычисления вышеупомянутых индексов, за исключением того, что это может увеличить время вычисления. Слишком большие алфавиты становятся проблемой, по существу, для графического представления последовательностей из-за трудности поиска контрастных цветов.
Известный недостаток турбулентности состоит в том, что, в отличие от индекса сложности, он игнорирует состояния, отсутствующие в последовательности. Более того, вычисление турбулентности может занимать гораздо больше времени. Поэтому мы рекомендуем использовать индекс сложности.