Допустим, у вас есть эти данные в R, и вы хотите опубликовать вопрос о stackoverflow. Чтобы другие могли вам лучше всего помочь, было бы неплохо, если бы у них была копия вашего объекта (фрейм данных, вектор и т. Д.) Для работы.
Допустим, ваши данные находятся во фрейме данных с именем site.data.
> 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
Как вы упаковываете его, чтобы пользователи могли воссоздать данные в точности так, как они есть у вас?
Вы хотите сделать это, не заставляя людей загружать текстовый файл и импортировать его.
(Примечание: эти данные взяты из примера блога REvolutions)
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 =" в вашем примере кода, и люди смогут воссоздать фрейм данных точно в том виде, в каком он у вас есть.
Другой способ, похожий на способ Кена, - использовать буфер обмена (в 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
На самом деле, в вашем исходном примере способ, которым вы вставили данные в формате столбца, отлично работает. Я просто скопировал ваш текст с веб-страницы и сделал это (используя OS X, поэтому у меня есть хорошая команда «вставить»):
> site.data <- read.table(pipe("pbpaste"))
Для данных игрушек, таких как что-то опубликованное в качестве тестового примера, это часто лучший подход. Если быть более точным, dput () - это хорошо, как говорит dggoldst.
Похожие вопросы
Связанные вопросы
Новые вопросы
r
R - это бесплатный язык программирования с открытым исходным кодом и программная среда для статистических вычислений, биоинформатики, визуализации и общих вычислений. Пожалуйста, предоставьте минимальные и воспроизводимые примеры вместе с желаемым результатом. Используйте dput () для данных и укажите все небазовые пакеты с вызовами library (). Не вставляйте изображения для данных или кода, вместо этого используйте блоки кода с отступом. По вопросам, связанным со статистикой, используйте https://stats.stackexchange.com.