Logo Logo
  • Ana Sayfa
  • Hakkında
  • Kategoriler
    • Genel
    • İstatistik
    • Makine Öğrenme
    • Model Geliştirme
    • Sağlık
    • Teknoloji
  • Tüm Yazılarım
  • İletişim

İletişim

  • Email buluttevfik@gmail.com

Site Haritası

  • Ana Sayfa
  • Hakkında
  • İletişim

Sosyal Medya Adresleri

R Markdown İle Örnek Uygulama Raporu Oluşturma: Example of Creating an Application Report with R Markdown

  • ANA SAYFA
  • Blog Details
Haziran 19 2021
  • İstatistik

Bu çalışmanın amacı prettydoc paketi kullanılarak R Markdown üzerinde html uzantılı raporlama yapmaktır. Bu nedenle kod bloklarıyla birlikte adım adım uygulama adımlarına yer verilmiştir. Çalışma R programlama ara yüzü olan R Studio üzerinde yapılmıştır.

Dynamic Documents for R • rmarkdown
Kaynak:https://rmarkdown.rstudio.com/docs/

R Markdown Raporunu Tanımlama

title: "R Markdown Örnek Uygulama Raporu"
author: "Tevfik Bulut"
date: "`r format(Sys.time(), '%d %B %Y')`"
output:
  prettydoc::html_pretty:
    theme: cayman
    highlight: github
    toc: true
    toc_float: false
    #toc_depth: 4
    number_sections: true

Yüklenen Kütüphaneler

Aşağıdaki R kod bloğunun çalıştırılmasından sonra kütüphanelerin yüklenip yüklenmediğine dair aşağıdaki gibi mantıksal vektör sonuçları gelecektir. Eğer mantıksal vektör sonuçlarının hepsi TRUE ise kütüphanelerin hepsini yüklenmiştir demektir. Kolaylık sağlaması açısından yukarıda kütüphanelerin yüklenmesini gösterir tabloyu da elde etmek ve daha kolay okumanız için yukarıdaki kod bloğu içerisinden kısa bir kod yazdım. Bu kod çalıştırıldığında aşağıdaki tabloda görüleceği üzere bütün kütüphaneler yüklenmiştir. Eğer ilgili kütüphane yüklenmemiş olursa “Paket Kurulumu Gerekli” ifadesi satırda yazacaktır. Satırda yazan bu uyarı metnine göre paketi ya kurar yada yüklersiniz. Bir paketin kurulması ile yüklenmesinin aynı şey olmadığını burada ifade etmek gerekir konuyu yabancı olanlar için. Paket kurulumu ilk defa yapılan bir işlem iken, paketin yüklenmesi zaten kurulan bir paketin yüklenmesi yani çalışır duruma getirilmesidir. İlk defa bir paket kurulumu gerçekleştiriliyorsa install.packages() fonksiyonunu, zaten bir paket kurulumu gerçekleştirilmiş ise ilgili paketin veya kütüphanenin yüklenmesi veya okunması için library() veya require() fonksiyonlarını kullanıyoruz. Fonksiyonlardaki parantez () içerisine yüklenecek paket veya kütüphane adını yazıyoruz.


kütüphane<-c("dplyr","tibble","tidyr","ggplot2","ggthemes","readr","readxl","ggpubr","formattable", "ggstance", "pastecs","writexl", "psych", "GGally","pander", "rstatix","RColorBrewer", "htmlwidgets","kableExtra","stargazer","readr", "equatiomatic")
yükle% mutate(yuklenme_durumu=if_else(yuklenme_durumu==TRUE, "Yuklendi", "Paket Kurulumu Gerekli")) %>% kbl(caption = "Kütüphane Yüklenme Bilgisi") %>% kable_classic_2(full_width = F, html_font="arial")

Tanımlayıcı İstatistikler

mtcars Veri Seti

Çalışma kapsamında R içerisinde bulunan mtcars veri setinden yararlanarak tanımlayıcı ve çıkarımsal istatistikler ortaya konulmuştur.Veri seti 11 değişkenden ve 32 gözlemden oluşmaktadır.

  1. mpg:Mil/(ABD) galon
  2. cyl:Silindir sayısı
  3. disp:Displacement (m.in.)
  4. hp:Brüt beygir gücü
  5. drat:Arka aks oranı
  6. wt:Ağırlık (1000 lbs)
  7. qsec: 1/4 mil zaman
  8. vs:Motor (0 = V şeklinde, 1 = düz)
  9. am:Şanzıman (0 = otomatik, 1 = manuel)
  10. gear: İleri vites sayısı
veri=mtcars
veri %>% kbl() %>% kable_styling()

Tanımlayıcı İstatistikler Tablosu

veri1 <- within(veri, {
   vs <- factor(vs, labels = c("V", "S")) #değişkenin nominal kategorik veri tipine dönüştürülmesi
   am <- factor(am, labels = c("otomatik", "manuel")) #değişkenin nominal kategorik veri tipine dönüştürülmesi
   cyl  <- ordered(cyl) # değişkenin nominal sıra ölçekli veri tipine dönüştürülmesi
   gear <- ordered(gear) # değişkenin nominal sıra ölçekli veri tipine dönüştürülmesi
   carb % kbl(caption = "Tanımlayıcı İstatistikler") %>%
  kable_classic(full_width = F, html_font = "Cambria")

Tanımlayıcı İstatistikler Tablosu Alternatifi

cikarma=names(veri1) %in% c("vs", "am", "cyl","gear", "carb") # tanımlayıcı istatistiklerden çıkarılacak nominal değişkenler

stargazer(veri[!cikarma], type = "text",title="Tablo 1: Sürekli Değişkenlerde Tanımlayıcı İstatistikler Tablosu", digits=1, out="table3.html", flip=T)

Vites türüne göre yakıt tüketimleri ve beygir güçleri

Veri setinde ‘mpg’ değişkeni yakıt tüketimini, ‘am’ değişkeni vites tipini ve ‘hp’ değişkeni ise beygir gücünü göstermektedir.


veri1 %>% ggplot(aes(x=mpg, y=hp, col=(am))) + geom_point()+
    facet_wrap(. ~ am, scales="free_y")+
    theme_economist()+
    theme(legend.position = "none")+
    theme(
      strip.text.x = element_text(
        size = 12, color = "black", face = "bold"
        ))
      

Eşitlik yazma

Eşitlik ortalanmak isteniyorsa eşitliğin soluna ve sağına çift dolar işareti ilave edilir. Eşitlik sola yaslanacaksa soluna ve sağına tek dolar işareti eklenir.

$$X_i$$

Büyüktür işareti

$$ x\ge y$$

Kesirli ifade yazımı

$$\frac{2}{3}$$

$$ x = \frac{-b \pm \sqrt{b^2 – 4ac}}{2a} $$

$$ E = mc^2 $$

Tabakalı örneklemede örneklem büyüklüğü formülü

İlgili değişken kesikli ise aşağıdaki eşitlik örneklem büyüklüüğünün hesaplanmasında kullanılır.

$$ n = \frac{Nt^2pq}{d^2(N-1)+t^2pq} $$

Standart sapma

$$\sigma = \sqrt{\frac{\sum\limits_{i=1}^{n} \left(x_{i} – \bar{x}\right)^{2}} {n-1}}$$

Sayı serilerini toplama

$$x_{1} + x_{2} + \cdots + x_{n}$$

$Y = X\beta + \epsilon$,footnotes^[Doğrusal regresyon modellerinde regresyon eşitliğini göstermektedir.].

Çıkarımsal İstatistikler

Modeli kurma ve eşitliklere dönüştürme

# Doğrusal regresyon modeli
model1 <- lm(mpg ~ am + hp, veri1)
# Teorik modeli gösterme
equatiomatic::extract_eq(model1)

model2 <- lm(mpg ~ am + hp+drat + wt, veri1)

Model 1 katsayılarını gösterme

equatiomatic::extract_eq(model1, use_coefs = TRUE,  wrap = TRUE)

Model 2 katsayılarını gösterme

equatiomatic::extract_eq(model2, use_coefs = TRUE,  wrap = TRUE)

Model 1 ve 2 Özeti

İki model karşılaştırıldığında kurulan 2. modelin açıklayıcılığı 1. modele göre daha yüksektir. Diğer bir ifadeyle düzeltilmiş R^2 (Adjusted R2) 1. modelde % yaklaşık % 76,7 iken 2. modelde % 82’dir.

stargazer(model1,model2, type = "text", title="Model Karşılaştırmaları")

Regresyon Model1 Grafikleri

par(mfrow = c(2,2))
plot(model1)

Regresyon Model2 Grafikleri

par(mfrow = c(2,2))
plot(model2)

Yapılan bu R Markdown çalışmasının özellikle veri bilimi (data science) ile ilgilenen akademi ve saha çalışanlarına bir katkı sunacağı düşünülmektedir.

Çalışmaya ve kod bloklarının uygulama sonuçlarına https://rpubs.com/tevfik1461/Markdown linkinde yer verilmiş olup, buradan yukarıda yapılan işlemleri daha iyi takip edebilir, somut rapor çıktısını inceleyebilirsiniz.

Faydalı olması ve farkındalık oluşturması dileğiyle.

Bilimle ve teknolojiyle kalınız.

Saygılarımla…

Not: Kaynak gösterilmeden alıntı yapılamaz veya kopyalanamaz.

Note: It can not be cited or copied without referencing.

Yararlanılan Kaynaklar

  1. https://github.com/yixuan/prettydoc/
  2. https://bookdown.org/yihui/rmarkdown-cookbook/equatiomatic.html
  3. https://rmd4sci.njtierney.com/math
  4. Anderson, Daniel, Andrew Heiss, and Jay Sumners. 2021. Equatiomatic: Transform Models into LaTeX Equations. https://github.com/datalorax/equatiomatic.
  5. https://rpruim.github.io/s341/S19/from-class/MathinRmd.html
  6. https://www.rdocumentation.org/packages/datasets/versions/3.6.2/topics/mtcars
  7. https://cran.r-project.org/web/packages/kableExtra/vignettes/awesome_table_in_html.html#Add_header_rows_to_group_columns
  8. https://tevfikbulut.com/2020/07/12/rda-multinominal-lojistik-regresyon-uzerine-bir-vaka-calismasi-a-case-study-on-multinominal-logistic-regression-in-r/
  9. https://cran.r-project.org/web/packages/prettydoc/index.html
  10. https://rmarkdown.rstudio.com/docs/
  11. https://rpubs.com/tevfik1461/Markdown

R Markdown raporunun oluşturulmasında kullanılan kodların tamamı kod bloklarıyla birlikte aşağıdaki linkten pdf formatında indirilebilir.

rmarkdownraportevfikbulutİndir
Önceki yazı Sonraki Yazı
AnalizKeşifsel Veri AnaliziprettydocR Markdown

Yorum Yaz Cevabı iptal et

Son Yazılar

  • Kanada Sağlık Sisteminde Bekleme Süreleri
  • Araştırma Metodolojisi Notları-II
  • Araştırma Metodolojisi Notları-I
  • Microsoft Excel’de Bulut Endeks-Beta [BE-β] Simülasyonu
  • R’da Statik ve Dinamik Haritalama Vaka Çalışmaları: Türkiye Örneği

Son Yorumlar

  1. Küresel İnovasyon Endeksi 2021 Yılı Raporu ve Türkiye - winally.com - Küresel İnovasyon Endeksi’nde Türkiye Ne Durumda?
  2. R’da Birliktelik Kuralları | canözkan - Apriori Algoritması Üzerine Bir Vaka Çalışması: A Case Study on Apriori Algorithm
  3. Tevfik BULUT - Python’da Şans Oyunları Perspektifinden Olasılık : Probability from Perspective of the Chance Games in Python
  4. Ahmet Aksoy - Python’da Şans Oyunları Perspektifinden Olasılık : Probability from Perspective of the Chance Games in Python
  5. Tevfik BULUT - Z Tablosuna Göre Güven Aralığının Hesaplanmasına Yönelik Bir Simülasyon Çalışması: A Simulation Study for Calculating Confidence Interval by Z Table

Arşivler

  • Ocak 2023
  • Ekim 2022
  • Eylül 2022
  • Nisan 2022
  • Mart 2022
  • Ekim 2021
  • Eylül 2021
  • Ağustos 2021
  • Temmuz 2021
  • Haziran 2021
  • Mayıs 2021
  • Nisan 2021
  • Şubat 2021
  • Ocak 2021
  • Aralık 2020
  • Kasım 2020
  • Ekim 2020
  • Eylül 2020
  • Ağustos 2020
  • Temmuz 2020
  • Haziran 2020
  • Mayıs 2020
  • Nisan 2020
  • Mart 2020
  • Şubat 2020
  • Ocak 2020
  • Aralık 2019
  • Kasım 2019
  • Ekim 2019
  • Eylül 2019
  • Ağustos 2019
  • Mayıs 2019
  • Şubat 2019
  • Aralık 2018
  • Eylül 2018
  • Ağustos 2018
  • Temmuz 2018
  • Mayıs 2018
  • Nisan 2018
  • Ekim 2017
  • Temmuz 2017
  • Haziran 2017
  • Mayıs 2017
  • Ocak 2017

Kategoriler

  • Genel
  • İstatistik
  • Makine Öğrenme
  • Model Geliştirme
  • Sağlık
  • Teknoloji

Kategoriler

  • Genel
  • İstatistik
  • Makine Öğrenme
  • Model Geliştirme
  • Sağlık
  • Teknoloji

Etiketler

Accuracy Basit Tesadüfi Örnekleme Bernoulli Olasılık Dağılımı Confusion Matrix Coronavirus Doğruluk Doğruluk Oranı Dünya Sağlık Örgütü EDA Epidemi Epidemiyology Epidemiyoloji Exploratory Data Analysis Exploratory Data Analysis (EDA) F1 Forecast Keşifsel Veri Analizi Kitle Olasılık Fonksiyonu Koronavirüs Koronavirüs Salgını Olasılık Olasılıklı Örneklem OSB Pandemi Point Estimation Point Forecast Prevalance Prevalans Probability Sampling R Recall Salgın Sağlık Bakanlığı Simple Random Sampling Tahmin TBATS TURKEY TÜRKİYE Veri Madenciliği WHO World Health Organization Yapay Zeka ÇKKV Örneklem Örneklem Büyüklüğü
Logo

Burada, gazete ve dergilerde yayınlanan çalışmalarımın tamamı çalışmakta olduğum kurumdan bağımsız olarak özel hayatımda yaptığım çalışmalardır. Dolayısıyla, burada yer alan çalışmalardan emeğe saygı adına kaynak gösterilmesi suretiyle azami ölçüde herkes yararlanabilir.

Site Haritası

  • Ana Sayfa
  • Hakkında
  • Blog
  • İletişim

Linkler

  • winally.com

Bana Ulaşın

Bu sayfa, bazı temel bilgilerin ve bir iletişim formunun yer aldığı bir iletişim sayfasıdır. Suç teşkil edecek, yasadışı, tehditkar, rahatsız edici, hakaret ve küfür içeren, aşağılayıcı, küçük düşürücü, kaba, müstehcen, ahlaka aykırı, kişilik haklarına zarar verici ya da benzeri niteliklerde içeriklerden doğan her türlü mali, hukuki, cezai, idari sorumluluk içeriği gönderen Kişilere aittir.

  • Email: buluttevfik@gmail.com

© Copyright 2022 Tevfik Bulut