Как экспортировать определение объекта R к простому тексту так, чтобы другие могли воссоздать его?

Я использовал инструмент в своей работе комплект инструментов LDRA

, Это используется для тестирования c/c ++ код, но это также может проверить по кодированию стандартов, таких как MISRA и т.д.

13
задан Dan Goldstein 12 August 2009 в 12:08
поделиться

3 ответа

Команда dput записывает представление ASCII. Если вместо имени файла вы поместите «», он запишет его в консоль

> dput(site.data,"")
structure(list(site = structure(c(1L, 1L, 1L, 2L, 2L, 2L, 3L, 
3L, 3L), .Label = c("ALBEN", "ALDER", "AMERI"), class = "factor"), 
    year = c(5L, 10L, 20L, 5L, 10L, 20L, 5L, 10L, 20L), peak = c(101529.6, 
    117483.4, 132960.9, 6561.3, 7897.1, 9208.1, 43656.5, 51475.3, 
    58854.4)), .Names = c("site", "year", "peak"), row.names = c(1L, 
2L, 3L, 8L, 9L, 10L, 15L, 16L, 17L), class = "data.frame")

Просто скопируйте структуру и поместите ее после «site.data =» в вашем примере кода, и люди смогут воссоздать фрейм данных точно так же, как вы есть.

19
ответ дан 1 December 2019 в 20:57
поделиться

На самом деле, в вашем исходном примере способ вставки данных в формате столбца работает отлично. Я просто скопировал ваш текст с веб-страницы и сделал это (используя OS X, поэтому у меня есть хорошая команда «вставить»):

> site.data <- read.table(pipe("pbpaste"))

Для игрушечных данных, таких как что-то опубликованное в качестве тестового примера, это часто лучший подход. Чтобы быть более точным, dput () - это хорошо, как говорит dggoldst.

6
ответ дан 1 December 2019 в 20:57
поделиться

Другой способ, похожий на способ Кена, - использовать буфер обмена (в Windows и, возможно, в Linux). Я бы скопировал ваш код и запустил

> site.data <- read.table("clipboard", header=T)
> site.data
    site year     peak
1  ALBEN    5 101529.6
2  ALBEN   10 117483.4
3  ALBEN   20 132960.9
8  ALDER    5   6561.3
9  ALDER   10   7897.1
10 ALDER   20   9208.1
15 AMERI    5  43656.5
16 AMERI   10  51475.3
17 AMERI   20  58854.4
3
ответ дан 1 December 2019 в 20:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: