Я использую шаблоны проектов вместе с R studio, в настоящее время моя содержит следующие папки:
info
: pdfs, powerpoints, docs ... которые не будут использоваться ни одним скриптом
data input
: данные, которые будут использоваться моими скриптами, но не генерируются ими
data output
: данные, сгенерированные моими сценариями для дальнейшего использования, но не в качестве правильного отчета.
reports
: только файлы, которые фактически будут показаны кому-то еще
R
: все сценарии R
SAS
: потому что мне иногда приходится: '(
Я написал пользовательские функции, чтобы вызывать smart_save(x,y)
или smart_load(x)
для сохранения или загрузки RDS files
в папку data output
(файлы с именами переменных), поэтому меня не беспокоит paths
во время моего анализа.
Пользовательская функция new_project
создает нумерованную папку проекта, копирует все файлы из шаблона, переименовывает файл RProj
, редактирует вызовы setwd
и устанавливает рабочий каталог в новый проект.
Все R
скрипты находятся в папке R
, структурированной следующим образом:
00_main.R
setwd
- вызывает скрипты от 1 до 5
00_functions.R
- Все функции и только функции идут туда, если их будет слишком много, я разделю их на несколько, названных как
00_functions_something.R
, в частности, если я планирую сделать пакет из некоторых, я выделю их отдельно
00_explore.R
- куча блоков скриптов, где я тестирую вещи или изучаю свои данные
- Это единственный файл, где мне разрешено быть грязным.
01_initialize.R
- Предварительно заполнен вызовом более общего сценария
initialize_general.R
из папки с моими шаблонами, который загружает пакеты и данные, которые я всегда использую и не возражаю иметь в своем рабочем пространстве
- загружает
00_functions.R
(предварительно заполнено)
- загружает дополнительные библиотеки
- установить глобальные переменные
02_load data.R
- загружает
csv/txt
xlsx
RDS
, для каждого типа файла есть предварительно заполненная строка комментария
- показывает, какие файлы были созданы в рабочей области
03_pull data from DB.R
- Использует
dbplyr
для выборки отфильтрованных и сгруппированных таблиц из БД
- некоторые предварительно заполненные закомментированные строки для установки соединений и выборки.
- Поддерживайте минимальные операции на стороне клиента
- Нет операций на стороне сервера вне этого скрипта
- Показывает, какие файлы были созданы в рабочей области
- Сохраняет эти переменные, чтобы они могли быстрее загружаться
Как только это будет сделано, я отключу логическое значение query_db
, и в следующий раз данные будут перезагружены с RDS
.
Может случиться так, что мне придется передавать данные в БД, если это так, я создам дополнительные шаги.
04_Build.R
- Обработка данных, все самое интересное
dplyr
/ tidyr
все идет туда
- показывает, какие файлы были созданы в рабочей области
- сохранить эти переменные
Как только это будет сделано, я отключу логическое значение build
, и в следующий раз данные будут перезагружены с RDS
.
05_Analyse.R
- Подведите итог, модель ...
- отчет
excel
и csv
файлы
95_build ppt.R
- шаблон для отчета PowerPoint с использованием
officer
96_prepare markdown.R
setwd
- загрузить данные
- при необходимости установить параметры уценки
render
97_prepare shiny.R
setwd
- загрузить данные
- установить блестящие параметры, если необходимо
runApp
98_Markdown report.Rmd
99_Shiny report.Rmd