5 Санал болгох багцууд

R -дээр тархвар судлалын ажилд өргөн хэрэглэдэг багцуудыг доор жагсаав. Доорх кодыг шууд хуулж аваад уншуулж болно. Уншуулсан код CRAN –аас эдгээр багцуудыг татаж аваад, тухайн нээлттэй R- дээр шууд ачааллаж өгдөг. Хэрэв өмнө нь татаж авагдсан багц байсан бол зөвхөн ачааллах үйлдэл нь хийгднэ.

Доорх жагсаалтад ашиглах шаардлагагүй багц буй бол кодны урд нь # тэмдгийг тавьж идэвхигүйжүүлж болно.

Тэмдэглэл:

  • Доор кодыг уншуулахаас өмнө pacman багцыг суулга. install.packages("pacman")-кодыг уншуулж татаж авч болно. Энэ багцын p_load() функц нь аливаа багцыг шаардлагатай тохиолдолд суулгаад мөн ачааллаад тухайн нээлттэй R дээр шууд ашиглахад бэлэн болгож өгдгөөрөө онцлог. Бид энэ номонд ихэвчлэн p_load() -ыг ашиглана. Харин base R-ын багцуудыг татаж авах шаардлагагүй ба library()–ыг шууд уншуулж, ажиллуулж болно.
  • Аливаа багцыг суулгахад хамт суулгагдаж/ачааллагддаг багцуудыг догол мөр, болон “хэш” тэмдгээр тэмдэглэсэн. Жишээ нь ggplot2 багц бол tidyverse багцын харьяа юм.
  • Хэрэв функцын нэрс олон багцуудад давхардаж орсон бол тухайн функцыг ашиглах үед хамгийн сүүлд ачааллагдсан багцын функц ажиллана. Үүнийг masking гэх ба энэ талаар [R basics] хэсгээс нэмж уншна уу. Мөн conflicted багцыг ашиглаж ийм давхардалтыг шийдвэрлэж боломжтой.
  • [R basics] хэсгийн pacman болон masking гэсэн хэсгүүдийг уншна уу.

Энэхүү номыг боловсруулахад R, RStudio, болон R багцуудын хэддүгээр хувилбарыг ашигласан талаар [Editorial and technical notes] хэсгээс харна уу.

5.1 CRAN -ын багцууд

##########################################
# Тархвар судлалын хэрэглээнд тохиромжтой R –ын багцууд
##########################################

# Энэхүү код pacman багцын p_load() функцыг ашигласан. Энэ нь аливаа кодыг уншуулахад шаардлагатай багц таньд суулгагдаагүй байгаа  тохиолдолд, тухайн багцыг суулгаад, шууд ачааллуулдаг функц.


# "pacman" багц суусан эсэхийг шалга!
if (!require("pacman")) install.packages("pacman")


# CRAN-аас татаж авах боломжтой багцууд
##############################
pacman::p_load(
     
     # R-ыг сурах
     ############
     learnr,   # RStudio Tutorial цонхон дээрх интерактив хичээл
     swirl,    # R console дээрх интерактив хичээл
        
     # R төсөл болон файлын менежмент
     #############################
     here,     # R төслийн үндсэн хавтастай холбоотой файлын зам
     rio,      # өгөгдлийн олон янзын хэлбэрийг импортлох/экспортлох 
     openxlsx, # олон хуудастай (sheet) Excel файлыг импортлох/экспортлох 
  
     # Багц суулгах
     ################################
     pacman,   # багц суулгаж/ачааллана
     renv,     # багаар хамтран ажиллахад багцын хувилбаруудыг тохируулна
     remotes,  # github –аас татаж авч суулгах

     # Өгөгдлийн ерөнхий менежмент  
     #########################
     tidyverse,    # өгөгдлийг цэгцтэй (tidy) байдалд оруулж янзлах, танилцуулахад зориулсан олон багцыг агуулсан 
          #dplyr,      # Өгөгдөл янзлах
          #tidyr,      # Өгөгдөл янзлах
          #ggplot2,    # График зураглал
          #stringr,    # string болон character хэлбэрийн өгөгдлийг янзлах
          #forcats,    # factor хэлбэрийн өгөгдөлтэй ажиллах
          #lubridate,  # dates хэлбэрийн өгөгдөлтэй ажиллах
          #purrr       # давтан үйлдэл болон list –тэй ажиллах 
     linelist,     # linelist хэлбэрийн хүснэгтийг цэвэрлэх
     naniar,       # өгөгдлийн дутуу утгыг шалгаж, үнэлэх 

    # Статистик анализ  
     ############
     janitor,      # хүснэгт болон өгөгдөл цэвэрлэх 
     gtsummary,    # дескрибтив болон статистикийн хүснэгт хийх 
     rstatix,      # статитистикийн тест болон статистикийн хураангуйг түргэн хугацаанд боловсруулна
     broom,        # регрессийн анализийн үр дүнг цэгцтэй хэлбэрт оруулах
     lmtest,       # likelihood-ratio тестүүд
     easystats,
          # parameters, # регрессийн анализийн үр дүнг цэгцтэй хэлбэрт оруулах (өөр хувилбар)
          # see,        # forest plots –ыг харуулаh өөр хувилбар
     
     # Тархвар судлалын математик загварчлал

     epicontacts,  # Халдварт өвчний тархалтын сүлжээг судлах 
     EpiNow2,      # Rt-г тооцох
     EpiEstim,     # Rt-г тооцох
     projections,  # Тохиолдлын тоог урьдчилан тооцоолх
     incidence2,   # Тархвар судлалын муруйг зурж, тохиолдлын тоог тооцох 
     i2extras,     # incidence2 багцын нэмэлт функцууд
     epitrix,      # тархвар судлалд хэрэглэгддэг нэмэлт функцууд
     distcrete,    # Discrete delay тархалт
     
    
     # График зураглал -ерөнхий
     #################
     #ggplot2,         # tidyverse багцын харьяа
     cowplot,          # графикуудыг нэгтгэх  
     # patchwork,      # графикуудыг нэгтгэх  (өөр хувилбар)     
     RColorBrewer,     # өнгө сонгох
     ggnewscale,       # өнгөний нэмэлт тохируулга хийх

    
     # График зураглал – тусгай зориулалтын
     ########################
     DiagrammeR,       # DOT хэлийг ашиглах бүдүүвч, диаграмм хийх
     incidence2,       # тархвар судлалын муруй
     gghighlight,      # тусгай хэсгийг тодотгож харуулах
     ggrepel,          # жижиг гарчиг
     plotly,           # интерактив график
     gganimate,        # хөдөлгөөнт график 

     
    # ГИС орон зайн анализийн чиглэлээр
     ########################
     sf,               # Simple Feature хэлбэрийг ашиглан орон зайн мэдээллийг янзлах
     tmap,             # энгийн газрын зураг боловсруулах (интерактив болон статик газрын зураг)
     OpenStreetMap,    # ggplot-ын газрын зурагт OSM –ын basemap оруулах 
     spdep,            # орон зайн статистик анализ 
     
     # Тайлан, бичиг баримт
     #################
     rmarkdown,        # PDFs, Word, Powerpoint, HTML -ын файлууд үүсгэх
     reportfactory,    # R Markdown –ын үр дүнг автоматаар зохицуулах
     officer,          # powerpoint-ын файлтай ажиллах

     # Хяналтын самбар, аппликэйшн
     ############
     flexdashboard,    # R Markdown –ын кодыг хяналтын самбар болгож хувиргах
     shiny,            # интерактив веб аппликейшн хийх
     
     # Илтгэл, тайлангийн хүснэгт гаргах
     #########################
     knitr,            # R Markdown –ын тайлан болон html-ын хүснэгт үүсгэх
     flextable,        # HTML –ийн хүснэгтүүд
     #DT,              # HTML –ийн хүснэгтүүд (өөр хувилбар)
     #gt,              # HTML –ийн хүснэгтүүд (өөр хувилбар)
     #huxtable,        # HTML –ийн хүснэгтүүд (өөр хувилбар) 
     
     # Филогенетикийн анализ
     ###############
     ggtree,           # модны график зураглал,тэмдэглэгээ хийх
     ape,              # филогенетикийн болон эволюцийн мэдээлэлтэй ажиллах 
     treeio            # филогенетикийн график зураглал хийх
 
)

5.2 Github-ын багцууд

Дор бичсэн кодоор дараах хоёр багцыг Github –ын агуулахаас шууд татаж авна

  • Боловсролтын явцдаа буй epicontacts багц халдвар тархалтын модыг x-тэнхлэгт хугацаатайгаар харуулж өгдөг.
  • Энэхүү номны дасгалд ашиглах бүх өгөгдөл epirhandbook багцад буй. Мөн номын pdf хэлбэрийг татаж авч болно.
# Github- аас татаж авах багцууд (CRAN-д байхгүй)
##########################################################

# Боловсролтын явцдаа буй epicontacts багц (халдварын хэлхээг x-тэнхлэгт хугацаатайгаар харуулна)
pacman::p_install_gh("reconhub/epicontacts@timeline")

# Энэхүү номонд зориулсан багц (бүх дасгал, жишээг багтаасан) 
pacman::p_install_gh("appliedepi/epirhandbook")