Где находится файл .R script, расположенный на ПК?
Я хочу найти расположение файлов script.RRE, которые используются для вычисления в R.
Я знаю, что, набрав функцию объекта, я получу код, который будет запущен, а затем я могу скопировать и отредактировать и сохранить его как новый script файл и использовать его.
Причиной просить найти файл foo.R является
- Любопытство
- Знайте, какой алгоритм используется в числовых вычислениях
- Более непосредственно, функция из пакета stats, который я использую, запускает результаты для двух аргументов, а не других, и нужно выяснить, как заставить это работать.
Ошибка, отображаемая R, подразумевает, что в файле script могут потребоваться некоторые изменения.
Я ищу более общий ответ, если это возможно.
Изменить. В соответствии с комментариями до сих пор здесь приведен код для вычисления спектра временных рядов с использованием методов авторегрессии. Ввод данных - это одномерный ряд.
x = ts(data)
spec.ar(x, method = "yule-walker") 1
spec.ar(x, method = "burg") 2
команда 1 работает нормально.
команда 2 дает следующую ошибку.
Error in ar.burg.default(x, aic = aic, order.max = order.max, na.action = na.action, :
Burg algorithm only implemented for univariate series
Я попытался правильно указать все аргументы, такие как na.action = na.fail, order.max = NULL и т.д., но сообщение такое же.
Просьба предложить возможные решения.
P.S. (Этот вопрос отправляется после поиска в папке библиотеки, где установлен R, и zip файлы, которые поставляются с пакетами, руководствами и открытием файлов .rdb,.rdx)
Ответы
Ответ 1
См. FAQ 7.40 Как получить доступ к исходному коду для функции?
В большинстве случаев ввод имени функции будет печатать исходный текст код. Однако код иногда скрывается в пространстве имен или компилируется. Полный обзор того, как получить доступ к исходному коду, см. В Uwe Ligges (2006), "Служба поддержки: доступ к источникам", R News, 6/4, 43-45 (Http://cran.r-project.org/doc/Rnews/Rnews_2006-4.pdf).
Ответ 2
Когда R устанавливает пакет, он оценивает все исходные файлы ".R" и повторно сохраняет их в двоичном формате для более быстрой загрузки. Поэтому вы обычно не можете легко найти исходный файл.
Как было предложено в другом месте, вы можете просто ввести имя функции и посмотреть исходный код или загрузить исходный пакет и найти там источник.
library(plyr)
ddply # prints the source for ddply
# See the content of the R directory for plyr,
# but it only binary files:
dir(file.path(find.package("plyr"), "R"))
# [1] "plyr" "plyr.rdb" "plyr.rdx"
# Get the source for the package:
download.packages("plyr", "~", type="source")
# ...then unpack and inspect the R directory...
Ответ 3
.libPaths()
должен рассказать вам обо всех ваших текущих расположениях библиотек. Возможно наличие более одной установки пакета, если есть две библиотеки, но будет использоваться только тот, который находится в первой библиотеке. Если вы не предлагаете код и точное сообщение об ошибке, вряд ли кто-нибудь сможет предложить лучший совет.
Ответ 4
Я думаю, вы просите посмотреть, что я называю исходным кодом для функции в пакете. Если это так, то, как я это делаю, заключается в следующем, что сработало для меня в три раза, когда я пытался. Я сохраняю эти инструкции в нескольких местах и просто скопирован и вставил их здесь:
Чтобы увидеть исходный код для функции в программе R, загрузите пакет, содержащий эту функцию. В частности, загрузите файл, который заканчивается на "tar.gz". Это сжатый файл. Разверните сжатый файл, используя, например, "WinZip". Теперь вам нужно открыть несжатый файл, который заканчивается на ".tar" . Загрузите бесплатное программное обеспечение "7-Zip". Нажмите на файл "7zFM.exe" и перейдите в каталог, содержащий файл ".tar" . Вы можете извлечь содержимое этого файла ".tar" в новую папку. Содержимое состоит из файлов R, показывающих исходный код для функций в пакете R.
EDIT:
Сегодня (8 июля 2012 г.) мне удалось открыть файл tar.gz с использованием последней версии "WinZIP" и скопировать содержимое (исходный код) оттуда, не используя "7-Zip".
EDIT:
Сегодня (19 января 2013 г.) Я просмотрел исходный код для функций в базе R, загрузив файл
'R-2.15.2.tar.gz'
Чтобы загрузить этот файл, перейдите на веб-страницу http://cran.at.r-project.org/ и щелкните по этому файлу в этой строке:
"Последняя версия (2012-10-26, Trick or Treat): R-2.15.2.tar.gz, прочитайте, что нового в последней версии".
Разархивируйте файл. WinZip будет работать, или это было для меня. Затем найдите свой компьютер для readtable.r
или другой базовой функции R.
agstudy отметил здесь https://stackoverflow.com/info/14417214/source-file-for-r-function, что исходный код для read.csv
находится в файле readtable.r
, поэтому не ожидайте, чтобы каждая базовая функция R имела свои собственный файл.