30 Haziran 2018 Cumartesi

Otomatik olarak R ile günlük analiz yapıp git ile güncelleyin

Bu kodları çok farklı sayıda blog ve yazıdan derledim :)

Hedefim şu. Elimde bir R Markdown ya da R Notebook dökümanı var. Bunu belirli periyotlarla çalıştırıp güncel analizi git komutları ile github sayfama yüklemek istiyorum.

Böylece belirli bir API'den çektiğim veriyi belirli periyotlarla analiz edebileceğim.
Bu şekilde PubMed verisi üzerinde güncel analizlerimi oluşturmaya başladım.

Örnek otomatik analizler:
https://sbalci.github.io/pubmed/SchedulePubMedAnalysis.nb.html 

Örnek PubMed analizleri:
https://sbalci.github.io/ResearchOnBibliography/

1) R-project kodunu belirli periyotlarla çalıştırmak için RStudio'nun eklentilerini kullanıyorum:





Böylece aşağıdaki R dosyasını otomatik olarak belirli periyotlarla çalıştırmak mümkün.

2) Otomatik çalışan bu R kodunu kullanarak analizimi içeren R Markdown dosyasını çalıştırıp html çıktısını oluşturuyorum:

library(rmarkdown)
library(pander)
rmarkdown::render(input = "ScheduledAnalysis.Rmd",
output_format = "html_notebook",
output_file = "docs/ScheduledAnalysis.html",
quiet = TRUE)









3) Aynı R kodu içinde rstudioapi paketi ile de comand line, bash, terminal komutlarını da otomatik olarak çalıştırmak mümkün. Böylece git push da aynı anda yapılabiliyor.

library(rstudioapi)
CommitMessage <- paste("updated on ", Sys.time(), sep = "")
gitCommand <- paste("git add . \n git commit --message '",
CommitMessage,
"' \n git push origin master \n", sep = "")
gitTerm <- rstudioapi::terminalCreate(show = FALSE)
rstudioapi::terminalSend(gitTerm, gitCommand)











Hiç yorum yok:

Yorum Gönder