R – Kodlama

R, istatistiksel hesaplama, veri analitiği ve bilimsel araştırmada yaygın olarak kullanılan bir programlama dili ve ortamıdır. İstatistikçiler, veri analistleri, araştırmacılar ve pazarlamacılar tarafından verileri almak, temizlemek, analiz etmek, görselleştirmek ve sunmak için kullanılan en popüler dillerden biridir.

Etkileyici sözdizimi ve kullanımı kolay arayüzü nedeniyle, son yıllarda popülerliği artan yazılım dillerinden biridir.

Daha önceki yazım ile R – Giriş başlığı altında R ortamı ve R veri tipleri ile ilgili yazmaya başlamıştım, dizilerle devam edeceğim orada. Ama şimdiki boşluğu da fırsat bilip R – Kodlama ile ilgili de yazmak istiyorum.

Sanırım öncelikle Paketler(packages) ve Kitaplık ya da Kütüphane’ lerden (library) bahsetmek ve belki de bir kaçından, en azından yaptıkları ve hedefleri ile ilgili bilgi vermek önemli diye düşünüyorum. Ben Kütüphane (library) demeyi tercih ediyorum. herkes tarafından yazılabilecek ve kullanılabilecek kod kümelerini içeriyor.

R’ da Paket(package) ve Kütüphane(library) nedir?

Bir paket, R fonksiyonları, verileri ve derlenmiş koddan oluşan bir koleksiyondur. Paketlerin depolandığı konuma ise Kitaplık ya da Kütüphane denir.

Paket, R’ın işlevselliğini genişletirken kod dağıtımını standart hale getirir. Böylece derlenmiş paketler, kodlar herkes tarafından erişilebilir ve kullanılabilir duruma gelir. Kitaplık ise paketlerin depolandığı bir dizindir. Sabit sürücünüzde birden çok kitaplık olabilir.

Hangi Kitaplıkların mevcut olduğunu görmek için:

.libPaths()

Ve hangi paketlerin hangi kütüphanede olduğunu görmek için:

lapply(.libPaths(), dir)

Bir paket nasıl yüklenir ve kullanılır?

R’ da bir paketi yüklemenin pek çok yolu var. Bildiğim yolları göstermeye çalışacağım.

R yazılımını açar açmaz önümüzde tepede görülen menüden Tools/ Araçlar tıklayıp altından Install Packages/ Paketleri yükle seçmek sanırım paket yüklemenin ilk yolu olarak söylenebilir

Eğer sol alt bölme başlıklarında Packages/ Paketler göremiyorsanız önce üst menüde View/ Görünüm altından Panes/ Bölmeler seçip açılan alt menüden ya Show all panes/ Tüm bölmeleri göster ya da Zoom packages/ Paketlere yakınlaş seçip paketler bölmesini görünür hale getirelim. Packages/ Paketler bölümü menüsündeki ilk komut Install/ Yükle..

YouTube kanalımda da anlatmaya çalıştım, belki izlemek öğrenmeyi daha kolaylaştırabilir. Tıklayıp izleyebilirsiniz.

Bir diğer yolu ise Console/ Konsol bölmesinde install.pacakages() komutunu kullanmak.

install.packages(“ggplot2″, repos=”http://cran.r-project.org”, lib=”~/local/R_libs/”, dependencies = TRUE)

Paketler yükledikten sonra kodlamada kullanılmak isteniyorsa mevcut R ortamına ilave edilmelidir. Bu işlem yine birkaç türlü yapılabilir. Bence daha sonra yapmayı unutmamak adına kod satırlarının başında library(“paket ismi”) ile kullanılacak paketleri çağırmak en uygun yol.

Tabii yine konsoldan aynı komut library(“paket ismi”) ile paketi kullanılabilir duruma getirmek mümkün.

Bir diğer yol da Packages/ Paketler bölmesinde kullanmak istediğimiz paket isimleri yanındaki kutulara işaret koymak olacaktır.

Kullanacağımız paketleri işaretledikten sonra konsolda ilgili library(“paket ismi”) komutunun çalışmış olduğunu görmek mümkün.

Biraz evvel “kod satırları başında” diye yazmıştım. R’ da da diğer yazılım dillerinde olduğu gibi script – yazılım parçası kullanmak mümkün. Yine diğer pek çok yazılım dilinde olduğu gibi Notepad – Notdefteri kullanılıyor. R’ da bir örneğini burada altında “Script – Kodlama parçası” yazan resimde bulabilirsiniz.

Önemli paketler

İhtiyacınız olan paketi Google’da arama yaparak bulma ve erişme imkanınız var. Mutlaka Cran-R sayfalarına da bakmayı unutmayın, pek çok paket ile ilgili bilgiye ulaşma imkanınız var sayfalarında: https://cran.r-project.org/ Sayfanın solundaki linklerden Packages tıklarsanız gelen sayfadan paketlere ulaşma imkanı mevcut. Ben genelde Table of available packages, sorted by name linkine tıklıyorum bu sayfada. Şimdilik sadece 16850 adet paket mevcut. hepsinden burada bahsetmek pek mümkün değil, ama bu linklerden ilerleyerek her paketin hangi işlemi nasıl gerçekleştirdiği konusunda bilgi almak mümkün. Tabii bunun için İngilizce okuyup anlıyor olmak gerekiyor. Her zaman dönüp bana sorabilirsiniz.

R studio yaptıkları işlere göre ayırmış önemli olanları

. Analiz ve Keşif

  • tidyverse : Veri bilimi için gerekli R paketlerini içerir. İçerdiği tüm paketler, temel ortak tasarım felsefesini, dil bilgisini ve veri yapılarını paylaşır. tidyverse R ortamına yüklenirse aşağıdaki paketlerle yüklenir. Eğer aşağıdaki paketlerden sadece birkaçına ihtiyacınız var ise sadece ihtiyacınız olanları R ortamına tek tek yükleyebilirsiniz. İçindeki paketler:
    • dplyr : Veri işleme dilidir. En yaygın veri işleme zorluklarını çözmemize yardımcı olan tutarlı bir fiil kümesi sağlar;
    • readr : Readr’nin amacı, dikdörtgen verileri (csv, tsv ve fwf gibi) okumanın hızlı ve kolay bir yolunu sağlamaktır. Dikdörtgen veride her sütun bir değişken, her satır bir durum veya bir kayıttır. Sanırım en çok csv uzantılı dosyaları okuruz: read_csv(): virgülle ayrılmış (CSV) dosyaları
    • purr : işlevler ve vektörlerle çalışmak için eksiksiz ve tutarlı bir araç seti sağlar.
    • ggplot2 : grafikler oluşturmak için hazırlanmıştır. Veriyi siz sağlarsınız, ggplot2’ye değişkenleri estetiğe nasıl eşleştireceğini, hangi grafiksel temelleri kullanacağını söylersiniz o da grafiği çizer. İlgili örnekleri ileride vereceğim. Kendi Covid grafikleri projemde de kullandım
    • tidyr : amacı, düzenli veriler (tidy data) oluşturmanıza yardımcı olmaktır. Verinizin derli toplu olmasını sağlarsanız, araçlarla savaşmak için daha az, analiziniz üzerinde çalışmak için daha fazla zaman harcarsınız. Verinin düzenli olduğu durumlar:
      1. Her sütun değişken ise
      2. Her sıra bir gözlem ise
      3. Her hücre tek bir değer ise
    • stringr : dizelerle(strings) çalışmayı olabildiğince kolaylaştırmak için tasarlanmıştır. stringi üstüne inşa edilmiştir. Bu paketdeki tüm işlevler str_ ile başlar ve ilk argüman olarak bir dizge vektörü alır. İleride göreceğimiz gibi str_ kalıbıyla çalışan yedi ana fiil var. Örneğin; str_count(x, pattern) desen(pattern) sayısını, ya da eşleşme sayısını sayar. str_count( c(“apple”, “banana”, “pear”, “pineapple”), “a”) komutunda apple, banana, pear ve pineapple kelimelerinde kaç kez “a” geçtiğini bulur.
    • tibble : tembel ve somurtkan veri çerçeveleridir(data.frame): daha az iş yaparlar (yani, değişken adlarını veya türlerini değiştirmezler ve kısmi eşleme yapmazlar, hiçbir zaman satır isimleri-row.names() oluşturmazlar) ve daha fazla şikayet ederler (örneğin, bir değişken olmadığında). Bu, bizi sorunlarla daha erken yüzleşmeye zorlar ve genellikle daha temiz, daha etkileyici kod yazmamıza yol açar. data.frame’ler, listeler, matrisler veya tablolar gibi girdiler için çalışır, tibble. Örnek vermek gerkirse; bir 5×3 lük tibble tibble(x = 1:5, y = 1, z = x ^ 2 + y)
    • forcats : amacı, seviye veya değerlerin sırasını değiştirmek de dahil olmak üzere faktörlerle ilgili ortak sorunları çözen bir araç seti sağlamaktır. Bir örnek vermek gerekirse; fct_reorder(): Faktör seviyelerini başka bir değişkene göre sıralayarak yeniden sıralar.

. İletişim ve Etkileşim

  • Shiny : etkileşimli web uygulamaları oluşturmayı kolaylaştıran bir R paketidir. Bağımsız uygulamaları bir web sayfasında barındırabilir veya bunları R Markdown belgelerine yerleştirebilir veya gösterge tabloları oluşturabilirsiniz. Shiny uygulamalarınızı CSS temaları, html araçları ve JavaScript eylemleriyle de genişletebilirsiniz.
  • rmarkdown : düz metin düzenleyici kullanarak biçimlendirilmiş metin oluşturan bir biçimlendirme dilidir. Bu paket, çeşitli formatlara dönüşüm işlemi için render() gibi yüksek seviyeli işlevleri içerir. render() ile bir girdi dosyası belirtilen çıktı biçimine dönüştürülür.
  • flexdashboard : R için kolay etkileşimli gösterge tabloları hazırlamaya yarar. Bir grup veri görsellini gösterge tablosu olarak yayınlamak için R Markdown kullanır. Htmlwidgets, ızgara grafikleri, tablo verileri, göstergeler ve metin açıklamaları dahil olmak üzere çok çeşitli bileşenleri destekler. Sıra ve sütun tabanlı düzenleri tanımlamak için kullanımı esnek ve kolaydır. Bileşenler, tarayıcıyı dolduracak şekilde akıllıca yeniden boyutlandırılır ve mobil cihazlarda görüntülenmek üzere uyarlanır. Görselleştirme dizilerini ve ilgili yorumları sunmak için film şeridi düzenleri içerir. Görselleştirmeleri dinamik olarak yönlendirmek için Shiny’ı kullanabilirsiniz.

. Model ve Tahmin

  • TensorFlow
  • tidymodels
  • sparklyr

. Bağlantı ve Entegre

  • sparklyr
  • plumber
  • reticulate

Devamı yarın..

İçindekiler:

  •    Kütüphane – library
  •       Girdi -input
  •       Döngü -loop
  •       Yeni kayıt ekleme

Devamı yarın..

Last updated by at .