Мне нужно выполнить LIWC (Linguistic Inquiry и Word Count), и я использую quanteda / quanteda.dictionaries. Мне нужно «загрузить» пользовательские словари: я сохранил свои списки слов в виде отдельных файлов .txt и «загрузить» сквозные readlines (например, только с одним словарем):
autonomy = readLines("Dictionary/autonomy.txt", encoding = "UTF-8")
EODic<-quanteda::dictionary(list(autonomy=autonomy),encoding = "auto")
Это текст, который я пробую на
txt <- c("12th Battalion Productions is producing a fully holographic feature length production. Presenting a 3D audio-visual projection without a single cast member present, to give the illusion of live stage performance.")
Тогда я запускаю это:
liwcalike(txt, EODic, what = "word")
и получите эту ошибку:
Error in stri_replace_all_charclass(value, "\\p{Z}", concatenator) :
invalid UTF-8 byte sequence detected; perhaps you should try calling stri_enc_toutf8()
Очевидно, проблема в моем текстовом файле. У меня довольно много словарей, и я загружаю их как файлы.
Как я могу исправить эту ошибку? указание кодировки в readlines, похоже, не помогает
Вот файл https://drive.google.com/file/d/12plgfJdMawmqTkcLWxD1BfWdaeHuPTXV/view?usp=sharing
Обновление: самый простой способ решить эту проблему на Mac - открыть файл .txt в Word, а не в TextEdit. Word предоставляет опции для кодирования в отличие от стандартного TextEdit!