проблема с кодировкой с использованием пакета twitteR R для твитов на кириллице

#r #twitter #web

#r #Twitter #веб

Вопрос:

Я хочу анализировать твиты на кириллице через пакет twitteR.

Я запускаю этот простой код, чтобы получить последние 5 твитов:

 > library("twitteR")
> tweets=userTimeline(user="ru_mts",n=100)
> tweets[1:5]
  

Вывод приведен ниже. Что я должен сделать, чтобы его можно было использовать? Определенно что-то с кодировкой. Спасибо.

 [[1]]
[1] "ru_mts: @potemkink 37@8 ?@52KH5=88 ;8<8B>2 B@0D8:0 459AB2CNB >3@0=8G5=8O A:>@>AB8. 25ABL CA;C38, =0 :>B>@KE ;8<8B 1>;LH5: http://t.co/EgbYhwfx. #34"!"

[[2]]
[1] "ru_mts: @step_42, C40;5=85 8=D-O > ?@52KH5=88 ;8<8B0 2130" ?@>872>48BAO G5@57 *111*219# 2K7>2, 8;8 A<A A B5:AB>< stop =0 5340. 215A?;0B=>. ^3020 #34"!"

[[3]]
[1] "ru_mts: @d_kosmos, 2 A;CG05 5A;8 C 220A =5 ?>;CG05BAO 2>A?>;L7>20BLAO CA;C3>9 3353:89 ?;0B56, @5:><5=4C5< 2>A?>;L7>20BLAO ?>765. ^3020 #34"!"

[[4]]
[1] "ru_mts: @d_kosmos, ?@54>AB02LB5 ?>60;C9AB0 220H 26B5; 34"!, =8: 2 B28, =0 blogs@mts.ru 37@>25@8< 8=D>@<0F8N ?> B0@8DC, CA;C30< 8 1>=CA0<. ^3020 #34"!"

[[5]]
[1] "ru_mts: @katmirabo 34>6=> CB>G=8BL ?@8G8=C A?8A0=89 87 45B0;870F88 2 30=B5@=5B-37><>I=8:5: http://t.co/3ydhKfPL 8;8 ?>72>=82 ?> 260890. ^3020 #34"!"
  

Вот sessionInfo ()

 R version 2.14.0 (2011-10-31)

Platform: i386-pc-mingw32/i386 (32-bit)


locale:

[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United States.1252    
LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C                           LC_TIME=English_United States.1252    
attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     
other attached packages:
[1] Unicode_0.1-3  twitteR_0.99.9 RJSONIO_0.95-0 RCurl_1.6-10.1 bitops_1.0-4.1
loaded via a namespace (and not attached):
[1] tools_2.14.0
  

Комментарии:

1. Это работает для меня. Не забывайте сообщать о sessioInfo (), чтобы у нас было больше информации для работы?

2. Спасибо. я добавил информацию о своем сеансе

3. Моя версия twitteR устарела, я пытался обновить, но пакет не создан…

4. я также не смог установить или собрать из исходного кода для R2.14. пришлось понизить версию до R2.13, установить twitteR, затем удалить R2.13, сохранив twitteR, и, наконец, установить R2.14. работает нормально, за исключением кодирования. думаю, это системная проблема, локализация или что-то в этом роде.

5. wtf??? Пакет «twitteR» был удален из репозитория CRAN. Ранее доступные версии можно получить из архива.

Ответ №1:

Проблема на самом деле связана с RJSONIO ::FromJSON и RCurl ::getURL, которые выделяют / выделяли кодировку «UTF-8».

RJSONIO::FromJSON() не использовался для сохранения кодировки, но используется при обновлении до RJSONIO 0.96-0.

В настоящее время Дункан изучает проблему с кодировкой для RCurl :: getURL (он использует правильную кодировку для создания элемента символьного вектора, но затем происходит что-то странное).

Короткий ответ — обновить RJSONIO до 0.96-0, а затем обновить RCurl, когда будет выпущена следующая версия с исправлением.

Комментарии:

1. gosh RCurl был опубликован относительно недавно, в 2011-11-02. Есть идеи, когда он может обновиться? в любом случае спасибо, что указали, в чем проблема.

2. @dmitryungurean Я сообщил об этой проблеме 24 октября. Дункан любезно ответил, сказав, что это в его списке дел, но, учитывая количество пакетов, которые он поддерживает, а также его профессиональную работу, я думаю, будет справедливо сказать, что он очень занятой человек, поэтому понятия не имею, когда он найдет время для ее решения.

3. Круто, похоже, были некоторые улучшения в кодировке (как и вам, мне придется подождать двоичного файла Windows, чтобы проверить их): omegahat.org/RCurl/Changes.html

4. странно. пытался создать RCurl из исходного кода (это была моя первая попытка), но не удалось. хотя удалось собрать пакет из этой инструкции по созданию пакетов R. biostat.wisc.edu /~kbroman/Rintro/Rwinpack.html

5. установленный RCurl 1.8-0.1 вместе с twitteR 0.99.14, к сожалению, сохраняется та же проблема с кодировкой: (