На этот вопрос уже есть ответ здесь:
Как просмотреть исходный код в R ? Например, для функции portfolio.optim
> require(tseries)
> portfolio.optim
function (x, ...)
UseMethod("portfolio.optim")
> methods(portfolio.optim)
[1] portfolio.optim.default* portfolio.optim.ts*
Non-visible functions are asterisked
> portfolio.optim.ts
Error: object 'portfolio.optim.ts' not found
> portfolio.optim.default
Error: object 'portfolio.optim.default' not found
Когда я устанавливаю пакет R локально, он также загружает исходный код? Где он хранится на компьютере? Кто-нибудь знает?
В ответ на Невидимые функции помечены звездочкой
, это означает, что фактические функции, которые отправляются на ts
или объекты по умолчанию, соответственно, в пространстве имен tseries, но не экспортируется. Так что просто введите tseries ::: портфолио.optim.default
, и вы увидите код функции, как только вы укажете полный патч, включая пространство имен.
Будет ли загружаться R исходный код или двоичный файл, зависит от вашей операционной системы. В любом случае доступен исходный код пакета tseries . Чтение исходного кода, написанного опытными программистами, - хороший способ учиться.
Функция getAnywhere
полезна, когда вы не знаете, в каком пространстве имен находится функция.
Описана в руководстве или на странице помощи функции.
Для большинства функций вы можете ввести edit ( имя функции ) в командное окно в R. Где вы заполняете имя функции с название.
В результате вы можете получить исходный код функции. Тем не менее, я пробовал это для функции портфолио.optim, так что там она не работает. Возможно только для стандартных функций.