Пакет R - TM - Проблема с арабским - разница между Mac OS X и Windows OS
НА MACBOOK PRO с RSTUDIO
```{r}
versionInfo()
```
1.R version 3.1.0 (2014-04-10)
2.Platform: x86_64-apple-darwin10.8.0 (64-bit)
3.Packages : tm_0.6 NLP_0.1-3
НА WINDOWS 8.1 с RSTUDIO
```{r}
versionInfo()
```
1.R version 3.1.0 (2014-04-10)
2.Platform: x86_64-w64-mingw32/x64 (64-bit)
3.Packages : tm_0.6 NLP_0.1-3
Описание проблемы
Приветствую всех,
Я работал все выходные. Я работаю над кандидатом наук по анализу социальных сетей. В настоящий момент я использую пакет TM для интеллектуального анализа текста и анализа, при этом английский и арабский языки смешаны в наборах данных ставок.
Наборы данных собираются из Twitter API с помощью программы JAVA и помещаются в базу данных MongoDB.
В тестовых целях я использую небольшой набор данных из 36000 твитов.
Проблема в том, что для вычисления огромных наборов данных (> 1000000 строк) моего MacBookPro будет недостаточно. Мне нужно использовать ПК с ОС Windows 8.1 с улучшенными ПЗУ и ОЗУ.
При тестировании моего кода в ОС Windows 8.1, которая отлично работает с RStudio в MAC OS X с тем же набором тестовых данных, у меня есть несколько отличных от пакета TM результатов на уровне вычислений Corpus.
Вот начало кода R:
```{r}
y <<- dget("file") # get the file ext rated from MongoDB with rmongodb package
a <<- y$tweet_text # extract only the text of the tweets in the dataset
text_df <<- data.frame(a, stringsAsFactors = FALSE) # Save as a data frame
myCorpus_df <<- Corpus(DataframeSource(text_df_2)) # Compute a Corpus from the data frame
```
Когда я проверяю R в MAC OS, все символы, английский и арабский, хорошо представлены:
```{r}
str(myCorpus_df[1:2])
```
List of 2
$ 1:List of 2
..$ content: chr "The CHRONICLE EYE Ahrar al#Sham is clearly fighting #ISIS where its men storm some #Manbij buildings #Aleppo "
..$ meta :List of 7
.. ..$ author : chr(0)
.. ..$ datetimestamp: POSIXlt[1:1], format: "2014-07-03 22:42:18"
.. ..$ description : chr(0)
.. ..$ heading : chr(0)
.. ..$ id : chr "1"
.. ..$ language : chr "en"
.. ..$ origin : chr(0)
.. ..- attr(*, "class")= chr "TextDocumentMeta"
..- attr(*, "class")= chr [1:2] "PlainTextDocument" "TextDocument"
$ 2:List of 2
..$ content: chr "RT @######## جبهة النصرة مهاجرينها وأنصارها مقراتها مكان آمن لكل من يخشى على نفسه الآذى "
..$ meta :List of 7
.. ..$ author : chr(0)
.. ..$ datetimestamp: POSIXlt[1:1], format: "2014-07-03 22:42:18"
.. ..$ description : chr(0)
.. ..$ heading : chr(0)
.. ..$ id : chr "2"
.. ..$ language : chr "en"
.. ..$ origin : chr(0)
.. ..- attr(*, "class")= chr "TextDocumentMeta"
..- attr(*, "class")= chr [1:2] "PlainTextDocument" "TextDocument"
- attr(*, "class")= chr [1:2] "VCorpus" "Corpus"
Тем не менее, когда я выполняю ту же часть кода в RSTUDIO в ОС WINDOWS, весь арабский язык декодируется неправильно (здесь вас не обойти). Строка Корпуса показывает те же параметры. Не читается только отображение арабского языка. При проверке во фрейме данных text_df
арабский язык отображается хорошо.
Когда я проверяю кодировку арабского слова в обеих ОС (ОС MAC и WINDOWS), кажется, что она хорошо закодирована:
```{r}
Encoding("لمياه_و_الإصحا")
```
[1] "UTF-8"
Я пытался передать много дополнительной информации при создании Corpus
(с readerControl
etc…), но ничего не изменилось: мой арабский язык плохо отображается в R или RStudio в ОС Windows с пакетом tm.
Кто-нибудь сталкивался с такими же проблемами разницы между MAC OS X и WINDOWS OS с нелатинским текстовым поиском?