Как сохранить маркеры начала и конца предложения с помощью quanteda
Я пытаюсь создать 3 грамма, используя Rquanteda
пакет.
Я изо всех сил пытаюсь найти способ сохранить в n-граммах маркеры начала и конца предложения,<s>
а также</s>
как в коде ниже.
Я думал, что с помощьюkeptFeatures
с регулярным выражением, которое соответствует тем, которые должны поддерживать их, но маркеры шеврона всегда удаляются.
Как я могу предотвратить удаление маркеров шеврона или как лучше разграничить начало и конец предложения с помощьюquanteda
?
В качестве бонуса вопрос в чем преимуществоdocfreq(mydfm)
надcolSums(mydfm)
результат str (colSums (mydfm)) и str (docfreq (mydfm)) практически идентичен (Named num [1:n]
бывший,Named int [1:n]
последний)?
library(quanteda)
text <- "<s>I'm a sentence and I'd better be formatted properly!</s><s>I'm a second sentence</s>"
qc <- corpus(text)
mydfm <- dfm(qc, ngram=3, removeNumbers = F, stem=T, keptFeatures="\\</?s\\>")
names(colSums(mydfm))
# Output:
# [1] "s_i'm_a" "i'm_a_sentenc" "a_sentenc_and" "sentenc_and_i'd"
# [2] "and_i'd_better" "i'd_better_be" "better_be_format"
# [3] "be_format_proper" "format_proper_s" "proper_s_s" "s_s_i'm"
# [4] "i'm_a_second" "a_second_sentenc" "second_sentenc_s"
РЕДАКТИРОВАТЬ:
Исправлено keepFeatures для keepFeatures во фрагменте кода.