Я признаю, что сообщение об устаревании не самое полезное, но идея в том, что мы изменили поведение токенизатора по умолчанию в v2. what = "word"
теперь сохраняет теги социальных сетей (@username и #hashtag), и нет возможности удалить @
или #
из тегов с what = "word"
(по умолчанию).
Чтобы удалить символы тега, вам нужно использовать what = "word1"
(по умолчанию до v2) или сейчас, использовать любой другой токенизатор, который создает вывод списка, например слово tokenizer из пакета tokenizer .
library("quanteda")
## Package version: 2.0.1
txt <- "This is a @username and #hashtag."
# preserve social media tags (default)
tokens(txt, remove_punct = TRUE, what = "word")
## Tokens consisting of 1 document.
## text1 :
## [1] "This" "is" "a" "@username" "and" "#hashtag"
# remove social media tags (using tokenizers pkg)
tokenizers::tokenize_words(txt, lowercase = FALSE) %>%
tokens()
## Tokens consisting of 1 document.
## text1 :
## [1] "This" "is" "a" "username" "and" "hashtag"
# remove social media tags (using quanteda)
tokens(txt,
remove_twitter = TRUE, remove_punct = TRUE,
what = "word1"
)
## Warning: 'remove_twitter' is deprecated; for FALSE, use 'what = "word"' instead.
## Tokens consisting of 1 document.
## text1 :
## [1] "This" "is" "a" "username" "and" "hashtag"