дословная функция - PullRequest
       5

дословная функция

3 голосов
/ 07 июня 2011

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

Я знаю, что есть функция, которая получает определение переменной больше, чем ее содержимое. Я объясняю себя ...

> x <- c(4:6,5:9)
> x  # This will return the contents of x...  4,5,6,5,6,7,8,9.

> the.function.i.m.looking.for(x)  # would return:
> c(4:6,5:9)

Кто-нибудь помнит эту функцию? Спасибо.

Ответы [ 3 ]

5 голосов
/ 07 июня 2011

dput - это то, что вы предпочитаете. Со страницы справки: «Записывает текстовое представление ASCII объекта R в файл или соединение или использует его для воссоздания объекта».

> x <- c(4:6,5:9)
dput(x)
c(4L, 5L, 6L, 5L, 6L, 7L, 8L, 9L)

> x2 <-  c(4L, 5L, 6L, 5L, 6L, 7L, 8L, 9L)
> all.equal(x, x2)
[1] TRUE
4 голосов
/ 07 июня 2011

dput(x) приближает вас:

R> dput(x)
c(4L, 5L, 6L, 5L, 6L, 7L, 8L, 9L)

Или, если будет достаточно символьного представления, тогда идиомы deparse(substitute()) может быть достаточно:

foo <- function(x) {
    deparse(substitute(x))
}

, но вам нужноназывать это так:

R> foo(c(4:6,5:9))
[1] "c(4:6, 5:9)"

не это

R> foo(x)
[1] "x"
3 голосов
/ 07 июня 2011

Если вы хотите вернуть синтаксис, необходимый для воссоздания объекта, тогда dput() ваш друг:

x <- c(4:6,5:9)
dput(x)
c(4L, 5L, 6L, 5L, 6L, 7L, 8L, 9L)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...