Объем функции R - PullRequest
       3

Объем функции R

1 голос
/ 04 апреля 2011

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

Я начинаю писать функцию, сначала выбираявверх по объекту, который я хочу, но я уже не могу этого сделать, вот код:

roundings <- function(obj.head)
                     {obj.list <- ls(pattern=obj.head)
                      obj.list
                     }

Предположим, у меня есть два объекта A1 и B1, я полагаю, если я запускаю roundings("A"), A1 должно появиться как выход функции, но это не так.

Что я сделал не так?Спасибо.

Ответы [ 2 ]

2 голосов
/ 04 апреля 2011

Вызов ls выполняет поиск в текущей среде внутри функции и не находит подходящих объектов.Вы можете указать параметр envir в ls с помощью .GlobalEnv.Таким образом ваш код становится:

roundings <- function(obj.head)
{
    obj.list <- ls(pattern = obj.head, envir = .GlobalEnv)
    obj.list
}
2 голосов
/ 04 апреля 2011

Я нашел причину, я должен был добавить envir=.GlobalEnv в параметрах ls.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...