##########################################
# Список полезных пакетов R для эпидемиологии #
##########################################
# Данный скрипт использует функцию p_load() из пакета R pacman,
# которая устанавливает пакет, если он отсутствует, и загружает его, если он уже установлен
# Проверяет, что пакет "pacman" установлен
if (!require("pacman")) install.packages("pacman")
# Пакеты доступные на CRAN
##############################
::p_load(
pacman
# изучение R
############
# интерактивные самоучители на панели RStudio Tutorial (обучение)
learnr, # интерактивные самоучители в консоли R
swirl,
# управление проектом и файлами
#############################
# пути к файлам, относительные для корневой папки проекта R
here, # импорт/экспорт многих типов данных
rio, # импорт/экспорт рабочих книг Excel с несколькими листами
openxlsx,
# установка и управление пакетами
################################
# установка/загрузка пакетов
pacman, # управление версиями пакетов при совместной работе в группах
renv, # установка с github
remotes,
# Общие вопросы управления данными
#########################
# включает множество пакетов для работы и презентации аккуратных данных
tidyverse, #dplyr, # управление данными
#tidyr, # управление данными
#ggplot2, # визуализация данных
#stringr, # работа с последовательностями и текстом
#forcats, # работа с факторами
#lubridate, # работа с датами
#purrr # повторения и работа со списками
# вычистка построчных списков
linelist, # оценка отсутствующих данных
naniar,
# статистика
############
# таблицы и вычистка данных
janitor, # создание описательных и статистических таблиц
gtsummary, # быстрое проведение статистических тестов и кратких сводок
rstatix, # вычистка результатов регрессий
broom, # тесты на отношение правдоподобия
lmtest,
easystats,# parameters, # альтернатива для вычистки результатов регрессий
# see, # альтернатива для визуализации форест-диаграмм
# моделирование эпидемий
###################
# анализ сетей распространения инфекции
epicontacts, # оценка Rt
EpiNow2, # оценка Rt
EpiEstim, # прогнозирование заболеваемости
projections, # создание эпидкривых и работа с данными по заболеваемости
incidence2, # дополнительные функции из пакета incidence2
i2extras, # полезные эпидемиологические функции
epitrix, # дискретные распределения времени задержки
distcrete,
# графики - общие моменты
#################
#ggplot2, # включен в tidyverse
# объединение графиков
cowplot, # patchwork, # объединение графиков (альтернатива)
# цветовые шкалы
RColorBrewer, # для добавления дополнительных слоев цветовых схем
ggnewscale,
# графики - специфические типы
########################
# диаграммы с использованием языка DOT
DiagrammeR, # эпидемические кривые
incidence2, # выделяет подмножество
gghighlight, # смарт подписи
ggrepel, # интерактивные графики
plotly, # анимированные графики
gganimate,
# ГИС
######
# для управления пространственными данными с использованием формата простого пространственного объекта
sf, # для создания простых кар, работает как с интерактивными, так и со статичными картами
tmap, # для добавления базовой карты OSM на карту ggplot
OpenStreetMap, # пространственная статистика
spdep,
# рутинные отчеты
#################
# создание файлов PDF, Word, Powerpoint и HTML
rmarkdown, # авто-организация выходных данных R Markdown
reportfactory, # презентации powerpoint
officer,
# информационные панели
############
# конвертация скрипта R Markdown в информационную панель
flexdashboard, # интерактивные веб-приложения
shiny,
# таблицы для презентации
#########################
# генерирование отчета R Markdown и html таблиц
knitr, # таблицы HTML
flextable, #DT, # таблицы HTML (альтернатива)
#gt, # таблицы HTML (альтернатива)
#huxtable, # таблицы HTML (альтернатива)
# филогенетика
###############
# визуализация и аннотация деревьев
ggtree, # анализ филогенетики и эволюции
ape, # визуализация филогенетических файлов
treeio
)
5 Рекомендованные пакеты
Ниже представлен длинный список рекомендованных пакетов для частых видов эпидемиологических работ в R. Вы можете скопировать этот код, выполнить его, и все эти пакеты будут установлены из CRAN и загружены для использования в текущей сессии R. Если пакет уже установлен, он просто будет загружен для использования.
Вы можете изменить код с помощью символов #
, чтобы исключить те пакеты, которые вам не нужны.
Важно отметить:
- Прежде чем выполнить, указанный ниже код, установите пакет pacman. Вы можете это сделать с помощью
install.packages("pacman")
. В данном руководстве мы подчеркиваем использованиеp_load()
из пакета pacman, которая устанавливает пакет, если необходимо, и загружает его для использования в текущей сессии R. Вы можете также загрузить пакеты, которые уже установлены, с помощьюlibrary()
из базового R.
- В коде ниже те пакеты, которые включены при установке/загрузке другого пакета, отмечены с помощью отступа и решетки. Например, посмотрите, что ggplot2 указан под tidyverse.
- Если в нескольких пакетах есть функции с одинаковым названием, может произойти маскирование, когда функция из последнего загруженного пакета будет иметь приоритет. Более детально вы можете прочитать об этом на странице Основы R. Подумайте над тем, чтобы использовать пакет conflicted для решения таких конфликтов.
- См. раздел Основы R по пакетам, чтобы получить дополнительную информацию о пакете pacman и маскировании.
Чтобы увидеть версии R, RStudio и пакетов R, использованных при подготовке данного руководства, см. страницу Редакционные и технические замечания.
5.1 Пакеты из CRAN
5.2 Пакеты с Github
Ниже представлены команды для установки пакетов напрямую из репозиториев Github.
- Версия разработчиков для пакета epicontacts содержит возможность создания деревьев распространения с временной осью x
- Пакет epirhandbook содержит все примеры данных для данного руководства и может быть использован для скачивания оффлайн версии руководства.
# Пакеты, которые можно скачать с Github (не доступные на CRAN)
##########################################################
# Версия разработчиков пакета epicontacts (для цепочек передачи с временем на оси x)
::p_install_gh("reconhub/epicontacts@timeline")
pacman
# Пакет для данного руководства, который включает все примеры данных
::p_install_gh("appliedepi/epirhandbook") pacman