Предпочтительный способ обмена данными с html-документом rmarkdown?

Я создал html-документ rmarkdown, чтобы поделиться кодом анализа в R. Я также хотел бы включить данные, но я не уверен в наиболее удобном способе (для получателя) предоставления данных. Я могу встроить CSV в качестве схемы данных URI следующим образом:

<a download="HUGEvirus.csv" href="`r sprintf('data:text/csv; base64,%s', encoded)`">Download data as CSV</a>

или предоставьте таблицу HTML, которая может варьироваться от необработанной до причудливой:

```{r echo=FALSE}
knitr::kable(iris)
```

Я уверен, что есть и другие варианты. Предполагая, что набор данных имеет такие же размеры, как наборы данных:: iris, как я могу поделиться набором данных, который:

-доступен с большинства платформ/программ
-может быть легко прочитан в R
-может быть упакован с документом rmarkdown, содержащим код, т.е. один файл для совместного использования
-это наименьший размер файла

Что делать, если размеры набора данных в 100 раз больше?


person Skaqqs    schedule 02.07.2018    source источник
comment
Как именно вы определяете лучшее? В текущей формулировке этот вопрос кажется основанным на мнении, которое считается не относящимся к теме Stack Overflow. Возможно, вы могли бы отредактировать, чтобы упростить предоставление ответов, которые можно проверить на соответствие вашим конкретным требованиям.   -  person MrFlick    schedule 02.07.2018
comment
Здесь у вас есть несколько вариантов: cran.r-project .org/web/packages/kableExtra/vinnettes/   -  person RLave    schedule 02.07.2018
comment
Я отредактировал сообщение, чтобы указать критерии @MrFlick   -  person Skaqqs    schedule 02.07.2018
comment
Вы хотите, чтобы данные были видны в документе, или достаточно встроить их в HTML-код? Действительно ли это должно быть в документе - особенно в 100-кратном случае, размещение данных где-то в Интернете кажется намного проще. Разместите его на (github|dropbox|onedrive|google drive|всё, что вам нравится) и поместите ссылку в документ.   -  person Gregor Thomas    schedule 02.07.2018


Ответы (1)


Проверьте DT::datatable. Использование в rmarkdown/html_output и вывод таблицы с extensions='buttons'. Проверьте это https://rstudio.github.io/DT/extensions.html.

Отображение данных в DT::datatable с расширениями кнопок позволит пользователю загружать выбранные или все данные в формате CSV/excel (при открытии в Chrome).

Это поможет: - пользователь получает данные - данные снова доступны для чтения с помощью r из-за excel/csv - могут использоваться для больших наборов данных (я пробовал более 60 000 записей) - код может быть разделен с помощью параметров фрагмента echo=TRUE

Надеюсь это поможет. Невозможно поделиться образцом, но если вы поделитесь некоторыми данными с желаемым результатом, мы можем протестировать. Ваше здоровье!!

person anuanand    schedule 04.07.2018