Подтвердить что ты не робот

R Aspell homebrew

работает на Macbook pro с ОС 10.6. Я недавно установил пакет Aspell с менеджером пакетов R, и кажется, что установка прошла нормально (без ошибок установки). но когда я пытаюсь использовать aspell, я получаю следующую ошибку:

> aspell("love")
Error in getSpeller() :
  No word lists can be found for the language "en_US".

Я также пробовал

> aspell("love", program = "/usr/local/bin/aspell")

Я также установил aspell и hunspell отдельно, используя GitHubs homebrew. Когда я установил aspell с homebrew, я использовал

brew install aspell --lang=en_US

Где-то я ищу на своем Mac, чтобы проверить, что язык en_US установлен? И если я найду, что en_US есть, есть ли какие-либо предложения относительно того, почему R не находит его?

Я немного новичок, когда речь идет о тонкостях установки из исходных файлов. Любая помощь будет высоко оценена.

4b9b3361

Ответ 1

Прошло много времени, но у меня недавно была та же проблема, и исправление было:

brew remove aspell
brew install aspell --lang=en

Мне следовало уделять более пристальное внимание, когда это пролетело в исходной brew установке:

Словари не установлены автоматически, пожалуйста, укажите языки, для которых вы хотите, чтобы словари были установлены с помощью --lang, например:% brew установить aspell --lang = en, es

Для следующих языков доступны словарные словари aspell: af, am, ar, ast, az, be, bg, bn, br, ca, cs, csb, cy, da, de, de_alt, el, en, eo, es, et, fa, fi, fo, fr, fy, ga, gd, gl, grc, gu, gv, he, hi, hil, hr, hsb, hu, hy, ia, id, is, it, kn, ku, ky, la, lt, lv, mg, mi, mk, мл, mn, mr, ms, mt, nb, nds, nl, nn, ny, или, pa, pl, pt_BR, pt_PT, qu, ro, ru, rw, sc, sk, sl, sr, sv, sw, ta, te, tet, tk, tl, tn, tr, uk, uz, vi, wa, yi, zu

Ответ 2

Как показано в нижней части формулы aspell, вы можете использовать опцию --with-lang-#{name}. В моем случае я хотел установить несколько словарей: de, en и pl. Я сделал это с помощью этой команды:

brew install aspell --with-lang-de --with-lang-en --with-lang-pl

Чтобы просмотреть все доступные параметры установки, используйте brew info aspell (Спасибо Andrew)

Опция --lang, указанная в этом потоке с --lang=de,en,pl, не работает для меня.

Ответ 3

Я не понимаю, что вы делаете. aspell является функцией в пакете utils и поэтому загружается по умолчанию при запуске R. Первый аргумент aspell - это имя файла, а не текстовый вектор. Возможно, вам потребуется установить словарь, доступ к которому может получить функция aspell. Но на моем Mac у меня уже установлено несколько версий (и, возможно, вам нужно будет их очистить). В репозитории Omegahat также есть тот, который протестирован с R. Интерфейс с Aspell, вероятно, будет пытаться выбрать правильный язык. Вы можете видеть, что R думает, является правильным языком с sessionInfo() и смотрите ваши настройки LOCALE. Вы можете найти расположение вашей установки Aspell с помощью Terminal.app, введя locate aspell в командной строке.

Это модификация примера в справке (aspell), которая проверяет проверку t *.dat файлов:

files <- Sys.glob("~/t*.dat")
 res <- aspell(files)
 str(res)
 length(res$File)
#[1] 309    # so I probably should have been more narrow than asking for .dat files beginning with "t".

Ответ 4

В качестве примечания, aspell() работает с факторами, но не с символьными векторами. Это не поможет после установки Aspell (или другой проверки орфографии), но потом, если вы хотите использовать aspell() для данных в R (вместо того, чтобы просто работать с файлами), убедитесь, что он правильно отформатирован.

Вот пример:

> str1 <- "This is a string with a mispeled word"
> str1 <- as.character(str1)
> aspell(str1)
Error in file(con, "r") : cannot open the connection
In addition: Warning message:
In file(con, "r") :
  cannot open file 'This is a string with a mispeled word': No such file or directory
> str1 <- "This is a string with a mispelled word"
> str1 <- as.factor(str1)
> results1 <- aspell(str1)
> results1 
mispelled
  <unknown>:1:25