R CMD в Windows 7 Ошибка - "R" не распознается как внутренняя или внешняя команда,
Я изучаю сборку пакетов в Windows 7, но после достижения этапа командной строки у меня возникли проблемы. Похоже, что следующая тема на ту же тему, с которой у меня возникли проблемы, но вопрос остается нерешенным:
Проблема: всякий раз, когда я пытаюсь ввести команду R CMD в командной строке (например, я пробовал R CMD install pkgName
, R cmd install pkgName
, Rcmd install pkgName
, где pkgName
является заполнителем для фактического пакета, который был R CMD check
В редакторе OS X, а также в CRAN, где у меня есть разархивированный исходный код в текущем рабочем каталоге), я получаю следующее сообщение об ошибке:
'R' is not recognized as an internal or external command,
operable program or batch file.
(Если я попробую команду Rcmd install pkgName
, то ошибка начнется с того, что 'Rcmd' is not...
). Обратите внимание, что даже если я 'Rcmd' is not...
только R
в командной строке и нажму Enter, я получаю ту же ошибку, поэтому я Я даже не могу вызвать R здесь, хотя он прекрасно открывается в своем автономном интерфейсе.
Я безуспешно проверил следующие руководства по выявлению проблемы:
Самое непосредственное, что пришло в голову, было то, что переменные пути в Windows не были установлены правильно, но это также (пока) не привело к ответу. Например, я трижды проверил пути, чтобы убедиться, что они правильные, в том числе для номера версии R, что x64
в имени пути является точным и т.д.
Я понимаю, что это сложная проблема для удаленной диагностики, но любые советы и предложения по решению этой проблемы приветствуются. Для справки ниже приведены шаги, которые я уже предпринял, чтобы попытаться решить эту проблему:
- Удалите R и Rtools
- Установите последнюю версию R (2.15.0)
- Установите Rtools215 в соответствии с версией R 2.15.0
- Первоначально я позволил Rtools указывать переменные пути (включая эту опцию во время установки). Нет успеха после этого метода.
-
Я обновил переменные пути на моем компьютере, где использовались следующие пути:
C:\Rtools\bin; C:\Program Files\R\R-2.15.0\bin\x64;
-
Я также пробовал команды R CMD
(и Rcmd
) со следующими включенными путями (обратите внимание, что эти пути ни к чему не приводят на моем компьютере, поэтому я попытался выполнить R CMD
/Rcmd
с Rcmd
и без них):
C:\Rtools\perl\bin; C:\Rtools\MinGW\bin;
-
Попытался добавить/удалить следующий путь, который ведет к единственной другой папке, видимой в папке Rtools:
C:\Rtools\gcc-4.6.3;
-
Пробовал несколько вариантов команд R CMD
, как отмечалось ранее.
- Я попробовал все это несколько месяцев назад, когда у меня были R версии 2.14.1 и Rtools214, и у меня возникла точно такая же проблема.
Примечание: у меня уже был установлен Cygwin до R и Rtools, и я не установил MikTeX (пока).
Ответы
Ответ 1
- Вы закрыли командную строку и открыли новую после настройки PATH?
- Введите команду
PATH
в командной строке и убедитесь, что вы правильно обновляете свой путь.
- Попробуйте перейти к каталогу, где R.exe сохранен и выполняется локально -
cd C:\Program...\bin\x64
, R.exe
.
- Убедитесь, что вы работаете в командной строке Windows, а не на терминале Cygwin
- Если у вас на самом деле есть пробел после запятой в вашем PATH, вам нужно удалить это:
/bin;C:/Program...
. Попробуйте объединить это с решением Joshua.
Ответ 2
Здесь я прилагаю все свое решение:
- Установить Rtools, совместимый с моей версией R
- Добавить
PATH: C:\Program Files\R\R-2.15.1\bin\x64;C:\Rtools\bin;C:\Rtools\gcc-4.6.3\bin
- В cmd введите:
R CMD INSTALL packagename
Нажмите "enter", сделанный.
Ответ 3
У меня было много проблем с тем, чтобы это сработало, и, наконец, нашел золотой самородок на r-project (R не любит пробелы в путях), так вот как я, наконец, сделал все это:
- Я установил R в "c:\programs" вместо "c:\program files...". Мой последний путь к RSCRIPT.exe - "C:\Programs\R\R-2.15.2\bin\Rscript.exe"
- Я добавил этот каталог в свой PATH, но, похоже, не помогает
- RStudio также устанавливается в каталоге c:\Programs (например, c:\Programs\RStudio), но RTools установлен в корневом каталоге c:\(например, c:\RTools).
- Я загрузил все пакеты в папку "c:\downloads\r"
- Я открыл командную строку в "c:\downloads\r" и запустил установку R CMD из этого каталога загрузки, указав путь к R
- например. "C:\Programs\R\R-2.15.2\bin\x64\R CMD INSTALL colorspace_1.2-0.zip"
Ответ 4
Похоже, что процессор CMD имеет чувствительность к регистру. Вы должны использовать INSTALL vs. install
Ответ 5
Простое решение, используйте цитаты:
c: > "C:\Program Files\WinZip\wzunzip.exe"
если вы запустите это, вам не нужно беспокоиться о пространстве в Program Files.
Надеюсь на эту помощь.
Ответ 6
Я столкнулся с подобной проблемой при попытке использовать SparkR из Windows Power Shell. Каждый раз, когда я делал ".\SparkR.cmd" (я был внутри папки, содержащей этот файл), он выдавал сообщение об ошибке вроде
cmd не распознается как внутренняя и внешняя команда... бла... бла... бла.
Я решил проблему, добавив "C:\Windows\System32" в мой PATH.
Я перезапустил свою систему, а затем повторил процесс, и на этот раз я увидел новую ошибку,
R не распознается как внутренняя и внешняя команда... бла... бла... бла.
Я перепробовал все виды подходов, в том числе упомянутые выше. НИЧЕГО не работало, я, вероятно, был недостаточно эффективен, чтобы заставить его работать.
Потом я наткнулся на это место на code.google. Я просто скопировал R.bat в блокнот и назвал его R.bat. Храните его в папке, где находится sparkR.cmd. Для меня это было
C:\Apache\искровым 1.5.1-бен-hadoop2.6\Bin\
Я поместил его на мой путь как:
C:\Apache\искровым 1.5.1-бен-hadoop2.6\Bin\R.bat
Перезапустил ноутбук, открыл Power Power от имени администратора и набрал:
.\R.bat help
Работало нормально. Затем я напечатал,
.\SparkR.cmd
и там это было.
Это сработало.
Я надеюсь, что это помогает людям, плохо знакомым с R. Спасибо. Гротендик.
Ответ 7
Я столкнулся с той же проблемой. Я сделал в файле .bat строку кода, указывающую путь к папке, в которой установлен R, а затем задаю путь к сценарию следующим образом:
@ECHO OFF
PATH C:\Program Files\R\R-3.5.1\bin
R CMD BATCH D:\project_abc\helloworld.R
После этого запустите файл .bat, и вы увидите, что код в скрипте будет работать гладко.