Я использую R для анализа твитов и хотел бы включить смайлики в свой анализ. Я читал полезные ресурсы и консультировался со словарями смайликов от Джессики Петерки Бонетты и Кейт Лайонс. Однако я сталкиваюсь с проблемой, когда в твитах рядом друг с другом находятся смайлики.
Например, если использовать твит с несколькими разложенными смайликами, я получу результаты, которые ищу:
x <- iconv(x, from = "UTF8", to = "ASCII", sub = "byte")
x
х вернет:
"Умм, наш самолет <9c> <88> <8f> задержался на <9a> <8f>, и я <80> <99> немного нервничал <9f> <98> <96>, но я <80> < 99> в пути <9c> <85> домой <9f> <8f>, так что <80> <99> действительно захватывающе <80> <8f> t <80>
Что при сопоставлении со словарем эмодзи Кейт Лайонс:
FindReplace(data = x, Var = "x", replaceData = emoticons, from="R_Encoding", to = "Name", exact = FALSE)
даст:
Ммм, наш самолет САМОЛЕТ получил задержку WARNINGSIGN, и я <80> <99> немного нервничаю <9f> <98> <96>, но я <80> <99> на пути WHITEHEAVYCHECKMARK домой <9f> <8f> так что <80> <99> действительно захватывающий DOUBLEEXCLAMATIONMARK t <80>
Если есть твит с двумя смайликами подряд, например:
"Задержка \ U0001f615 \ U0001f615 \ n. \ N. \ N. \ N \ n # flying #flight #travel #delayed #baltimore #january #flightdelay #travelproblems # bummer…"
Повторение процесса с иконкой сверху не будет работать, потому что он не будет соответствовать кодировкам в словаре эмодзи. Поэтому я подумал добавить пробел между двумя шаблонами (\ U0001f615 \ U0001f615), чтобы он стал
(\ U0001f615 \ U0001f615), однако я борюсь с правильным регулярным выражением для этого.