T.C. R PROGRAMLAMA VE BAZI R PAKET UYGULAMALARI ŞÜKRÜ ERGÜNTOP

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "T.C. R PROGRAMLAMA VE BAZI R PAKET UYGULAMALARI ŞÜKRÜ ERGÜNTOP"

Transkript

1 T.C. BİLECİK ŞEYH EDEBALİ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ R PROGRAMLAMA VE BAZI R PAKET UYGULAMALARI ŞÜKRÜ ERGÜNTOP BİTİRME ÇALIŞMASI MAYIS-2015 BİLECİK

2 T.C. BİLECİK ŞEYH EDEBALİ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ R PROGRAMLAMA VE BAZI R PAKET UYGULAMALARI ŞÜKRÜ ERGÜNTOP BİTİRME ÇALIŞMASI MAYIS-2015 BİLECİK

3 BİLDİRİM Bu kitaptaki bütün bilgilerin etik davranış ve akademik kurallar çerçevesinde elde edildiğinive yazım kurallarına uygun olarak hazırlanan bu çalışmada bana ait olmayan her türlü ifade ve bilginin kaynağına eksiksiz atıf yapıldığını bildiririm. DECLARATION I hereby declare that all information in this document has been obtained and presented in accordance with academic rules and ethical conduct. I also declare that, as required by these rules and conduct, I have fully cited and referenced all materials and results that are not original to this work. İmza Öğrencinin Adı SOYADI tarih: ii

4 ÖZET BİTİRME ÇALIŞMASI R PROGRAMLAMA VE BAZI R PAKET UYGULAMALARI Şükrü ERGÜNTOP BİLECİK ŞEYH EDEBALİ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ Danışman: Öğr. Gör. Murat ÖZALP 2015, 56 Sayfa Jüri Üyeleri İmza Bu çalışmada son yıllarda popüler olan R Programlama dili ve R Programlama Paket Uygulamaları Mevcuttur. Bu çalışma ile R programlama dilinin öğrenilmesi ve paketlerin kullanımı hakkında örnekler ile genel bilgi verilmiştir. : Anahtar Kelimeler: R Programming, R Data Mining, R Neural Network, nnet, neuralnetwork, R Web Developer, Shiny, RWeka, R Datasets iii

5 ABSTRACT THESIS R PROGRAMMING AND SEVERAL APPLICATONS OF THE R PACKAGE Şükrü ERGÜNTOP BILECIK SHEIKH EDEBALI UNIVERSITY ENGINEERING FACULTY DEPARTMENT OF COMPUTER ENGINEERING Advisor: Öğr. Gör. Murat ÖZALP 2015, 56 Pages Jury Sign In this study, R programming language popular in recent years and R Packages Application are available. This study aimed to learn the R programming language and general information are given about the use of R programming language packages Anahtar Kelimeler: R Programming, R Data Mining, R Neural Network, nnet, neuralnetwork, R Web Developer, Shiny, RWeka, R Datasets iv

6 ÖNSÖZ 3 bölümden meydana gelen bu kitabın birinci bölümünde yani giriş bölümünde, R programlama nın gelişimi kullanımına dair bilgiler, platformları, neden tercih edildiği, konusunda bilgiler verilmiştir İkinci bölümde R programlama dilinin yapısından, nasıl kullanıldığından, syntax ından bahsedilmiştir, 3. bölümde ise bazı R paketlerin nerelerde ve nasıl kullanıldığına dair birkaç uygulamalar gerçekleştirilmiştir. Bu projenin yazımının başından sonuna kadar emeği geçen ve beni bu konuya yönlendiren saygı değer hocam ve danışmanım Sayın Öğr. Gör. Murat ÖZALP a tüm katkılarından ve hiç eksiltmediği desteğinden dolayı teşekkür ederim. Şükrü ERGÜNTOP v

7 İçindekiler ÖNSÖZ v ŞEKİLLER TABLOSU ix 1 GİRİŞ Projede Kullanılan Programlama Dili R Programlama ya Giriş R Programlama Dili Artıları ve Eksileri R Grafik Kullanıcı Arayüzleri R Programlama Dili Özellikleri R programlama Paketleri R PROGRAMALAMA Veri Tipleri Diziler Matrix List Veri Çerçevesi Vektörler Döngüler, Koşullar ve Durumlar For döngüsü İf-Else Repeat döngüsü Which While Çizimler ve Grafikler Barplot ile Çubuk Grafik Çizimi Circle Plot Plot PCH Sembol Tablosu Plot Renk Tablosu pie(pasta) Grafiği vi

8 2.3.7 Histogram Lines Veri Okuma ve Yazma R Ortamına Excelden Veri Aktarma R Ortamına txt den Veri Aktarma R Ortamında Veri Oluşturma R Ortamına Aktarılan Verileri Görüntüleme Veri Yönetimi Hazır Fonksiyonlar Fonksiyon Oluşturma Özel Fonksiyonlar R Programlama Olasılık Dağılımları Binomal Dağılım Poission Dağılım Normal Dağılım Sürekli Düzgün Dağılım Üssel Dağılım R PAKET UYGULAMALARI Karekök Almayı Gerçekleştiren Yapay Sinir Ağı Oluştuma Uygulamanın Amacı Uygulamanın İçeriği Ugulamanın Aşamaları Ugulamanın R kodları Uygulamanın Sonucu İris Verisini sınıflandıran Yapay Sinir Ağı Oluştuma Uygulamanın Amacı Uygulamanın İçeriği Ugulamanın Aşamaları Ugulamanın R kodları Uygulamanın Sonucu Yapay Sinir Ağı ile "Dataset" paketindeki "infert" verisini sınıflandırma Uygulamanın Amacı vii

9 3.3.2 Uygulamanın İçeriği Ugulamanın Aşamaları Ugulamanın R kodları Yapay Sinir Ağı ile Kredi Derecelendirmesi Uygulaması Uygulamanın Amacı Uygulamanın İçeriği Uygulamanın Aşamaları Ugulamanın R kodları Web Ortamında Dinamik Veri Analizi Uygulamanın Amacı Uygulamanın İçeriği Uygulama Yapay sinir Ağı ile Animasyon Örneği Uygulama ARAŞTIRMA BULGULARI VE TARTIŞMA 43 SONUÇLAR VE ÖNERİLER 44 KAYNAKLAR 45 ÖZGEÇMİŞ 46 viii

10 ŞEKİLLER TABLOSU 1 R ın kullanım istatistiği[4] R Console R Comander kütüphanesi R Comander Arayüzü R Comander Örnek Bir Uygulama R Studio Arayüzü Barplot ile çubuk grafik çizimi Barplot ile çubuk grafik çizimi Barplot ile çubuk grafik çizimi Barplot ile çubuk grafik çizimi Barplot ile çubuk grafik çizimi Circle çizimi Circle çizimi Plot çizimi Plot çizimi Plot çizimi PCH Sembol Tablosu Renk Tablosu pie grafiği pie grafiği pie 3D grafiği Histogram grafiği line grafiği line grafiği Karekök Almayı Gerçekleştiren Yapay Sinir Ağı İris Veri Sınıflandırmasını Gerçekleştiren Yapay Sinir Ağı İris Veri Sınıflandırmasını Gerçekleştiren Yapay Sinir Ağının Testi Infert Verisi Sınıladıran Yapay Sinir Ağı Modeli Kredi Derecelendirme Gerçekleştiren Yapay Sinir Ağı Shiny Paket Uygulması nnet ve animation Paket Uygulması ix

11 1 GİRİŞ 1.1 Projede Kullanılan Programlama Dili R Programlama ya Giriş Tanım :R istatistiksel hesaplama ve grafik sistemidir. R hem bir programlama hemde yüksek seviyeli grafik dilidir, diğer diller için arayüz ve hata ayıklama olanaklarını sağlar[1] R dili Yeni Zelanda daki Aucland Üniversitesi İstatistik Bölümü nden Ross Ihaka ve Robert Gentleman tarafından yazılmıştır. Dünyanın çeşitli yerlerindeki araştırmacılar R yi geliştirmek için bir araya gelmiş ve 1997 de bu gruba "R core team" adı verilmiştir. R dilinin ilk sürümü "R core team" tarafından 29 Şubat 2000 tarihinde yayınlanmıştır. R istatistiksel yazılım geliştirme ortamı veri manipülasyonu, hesaplama ve grafik gösterim için tasarlanmıştır. R dilinin söz dizimi kuralları (syntax) C diline benzerlik gösterir. Fonksiyonel bir programlama dili olan R istatistikçiler ve matematikçiler için kod yazmayı kolaylaştıran fonksiyonlara sahiptir.[2] R Programlama Dili Artıları ve Eksileri Artıları[3] R açık kaynak kodlu GNU lisansı olan bir yazılım Hızlı ve ücretsiz İşletim sisteminden bağımsız olarak çalışır. 1

12 R en kapsamlı istatiksel analiz paketidir. Standart istatistiksel testler, modellerin hepsini içerir ve analizlerin yanı sıra, verileri yönetmek ve işlemek için kapsamlı bir dil sağlamıştır. Yeni teknoloji ve fikirler R ortamından erişim sağlanabilir. R ekonometri, veri madenciliği, mekansal analiz, ve biyo-bilişim gibi konularda uzmanlaşmış, birçok kaynaktan temin edebileceğiniz 15,000 in üstünde paket vardır. 32 ve 64 bit işlemci üzerinde çalışan, GNU / Linux, Macintosh ve Microsoft Windows üzerinde çalışabilir. R Microsoft Excel, Microsoft Access, Oracle, MySQL ve SQLite, Hadoop, SAS ve SPSS gibi birçok araçlar ile bağlantı kurularak data import- export işlemleri gerçekleştirebilir. Ayrıca PDF, JPG, PNG ve SVG formatlarında ve LATEX ve HTML için tablo ve grafik çıktısı alabilirsiniz. Eksileri[3] Öğrenme süreci uzundur. Kullanıcı dostu değildir.(arayüz Bakımından) Veriyi işlenecek hale getirmek zaman alıcı ve hataya açık bir süreçtir. Tüm işlemler hafızada gerçekleştirilir. Bu demek oluyor ki çok büyük veri için fazla ram gerekir Şekil 1: R ın kullanım istatistiği[4] 2

13 1.1.3 R Grafik Kullanıcı Arayüzleri R Terminali: R da komutların derlendiği terminaldir. Komutlar buraya yazıldıktan sonra R terminali kapatılırsa komutlar yok olur. Bu sorunu çözmek için "Dosya" menüsünden yeni betik oluşturulur. R termimali kullanıcı dostu bir arayüz değildir. Her işlemi komutlarla yapılmaktadır Şekil 2: R Console R Comander: tcltk tabanlı GUI dir R terminelinden "paketler" menüsünden "Rcmdr" paketi kurulur kurulduktan sonra R terminaline "library(rcmdr)" yazılarak arayüz başlatılır Şekil 3: R Comander kütüphanesi R termimale "library(rcmdr)" yazıldıktan sonra şekil 4 teki arayüz oluşmaktadır 3

14 Şekil 4: R Comander Arayüzü R Comander şekil 5 de görüldüğü gibi 3 bölümden oluşmaktadır 1. bölüm input, veri değerlerimizi girdiğimiz bölüm 2. bölüm output, verilerimizin sonuçlarını elde ettiğimiz bölüm ve son olarak 3.bölüm message,kodlarımızı derlediğimizde hata veya uyarının gösterildiği bölüm şekil 5 de R Comander arayüzü üzerinde bir değişkene vektör atanması ve bu değişkendeki vektör değerlerini gösterilmesi ile ilgili bir örnek uygulama gerçekleştirilmiştir 4

15 Şekil 5: R Comander Örnek Bir Uygulama Şekil 5 de gösterilen "submit" butonu eğer input bölümünden herhangi bir satır seçilmeden basılırsa her zaman input bölümünün son satırını derler R Studio: Kullanımı oldukça kolay ve gelişmiş bir arayüz 5

16 Şekil 6: R Studio Arayüzü Şekilde 6 da görüldüğü gibi R Studio 4 bölümden meydana gelmektedir. Öncelikle R kodlarının yazıldığı R scriptten bahsedilecek olunursa, "File" menüsünün altında bulunan "New File" sekmesindeki "R Scipt" sekmesi seçilerek oluşturulur, R Comander aratüzündeki gibi yine kodların derlendiği R Console bölümü, R scripte yazılan değişkenlerin gösterildiği bölüm ve son olarak R scripte yazılan grafiksel kodların, grafiklerinin gösterildiği bölüm bulunmaktadır. R scipteki kodlar diğer arayüzler gibi kodlar derlendiğinde eğer bir satır seçilmişse o satırı derler herhangi bir satır seçilmemiş ise son satırı varsayılan olarak derler. 6

17 1.1.4 R Programlama Dili Özellikleri Etkin bir veri işleme ve depolama[5] Dizi ve matris hesaplamaları için komutlar grubu[5] Veri analizi için ileri düzeyli teknikler topluluğu[5] Verinin ekranda ya da basılı bir eserde görüntülenebilmesine olanak veren geniş grafiksel özellikler[5] Kolay programlamaya uygun fakat karmaşık programlama dillerinin özelliklerin[5] sahip bir programlama dili olanaklarını sunmaktadır[5] Veri analizi için kullanılabilecek uyumlu ve bir arada kullanılabilen araçlar içerir.[4] Besne yönelimli bir programlama dili olması 2-D, 3-D gelişmiş grafik araçlarına sahip olması R programlama Paketleri R fonskiyonları ayrı ayrı paketler içine aktarılmıştır, böylece gerekli paketlerle çalışarak daha az bellek kullanımı ve hızlı işlem gücü sağlanır. Bu paketlerin bir başka avantajı da yazılan fonksiyonlardan oluşan paketlerin R web sitesinden temin edilerek yüklenebilmesidir[2] "Install.package() ve update.package() fonksiyonları R komut satırından istenilen paketin indirilmesi ve yüklenmesi için kullanılırlar.[2] Paketlere ait fonksiyonlar kullanılacağı zaman paket çağrılmalıdır paketlerin çağrılma komutu "library(paket_isimi)" şeklindedir 7

18 2 R PROGRAMALAMA 2.1 Veri Tipleri Diziler Dizler çok boyutlara sahip veri tipidir. array() fonksiyonu dizileri test eder veya oluşturur. dim() fonksiyonu dizinin boyutunu tanımlar Örnek 1 x < array(1 : 9) : 1 den 9 a kadar bir dizi oluşturur x : diziyi gösteren komut [1] : Dizinin konsoldan görünümü Örnek 2 x < array(1 : 9, c(3,3)) : 1 den 9 a kadar 3x3 lük bir dizi oluşturur x : Diziyi gösteren komut Örnek 3 x < 1 : 64 : x değişkenine 1 den 64 e kadar bir vektör atandı dim(x) < c(2,4,8) : vektörü diziye dönüştürür, 2x4 lük 8 tane dizi oluşturulur burda dikkat edilmesi gereken 2x4x8=64 olması yoksa boyut hatası verir is.array(x) : x adında bir dizi olup olmadığını sorgular x : Diziyi gösteren komut 8

19 2.1.2 Matrix Matrix 2 boyutlu dizilerdir. R, matrix i çok uygun ele almanzı sağlayan çok fazla opratör ve fonksiyona sahiptir Örnek 1 A < matrix(c(3,5,7,1,9,4),nrow = 3,ncol = 2) : vektörü 3x2 lik bir matrix e dönüştürür A Matrixi gösterem komut Örnek 2 ra < nrow(a) : A matrix in sütun sayısını ra değişkenine atıyor ra : Sütun sayısını gösterir ca < ncol(a) : A matrix in kolon sayısını ra değişkenine atıyor ca : Kolon sayısını gösterir Örnek 3 B < t(a) : A matrix inin transpozunu B değişkenine atar B : A matrix inin transpozunu gösterir Örnek 4 C < A A : matrix çarpımı(bölme /, çıkarma -, toplama + operatörleri ile yapılır) C : çarpım sonucun gösterir List R da list veri türü,elemanlarının sıralı koleksiyon içeren bir nesneye karşılık gelir. Öğeleri farklı modu veya tipte olabilir. Örnek 1 9

20 x < list(sayi = 3,yazi = LungCancerPatients,har f = c( A, B, C )) : Sayi,yazi ve karakter içeren bir liste oluşturur x : Listeyi gösterir is.list(x) : x değişkeni adında bir liste olup olmadığını sorgular Örnek 2 x[[1]] : x listesinin 1. elemanını getiri yani sayıyı(3) x[[2]] : x listesinin 2. elemanını getirir yani yazi(lung Cancer Patients) x[[3]] : x listesinin 3. elemanını getirir yani harf(a,b,c) x[[3]][2]: x listesinin 3. elemanının kendi içinde 2. elemanını getirir yani B x$har f : x listesindeki harf i getirir yani A,B,C x[[ har f ]] : x listesindeki harf i getirir yani A,B,C length(x) : Listenin uzunluğunu belirler as.data. f rame(x) x listesinin başlık başlık düzgün sıralanmasını sağlar Veri Çerçevesi R da data.frame çok güçlü bir veri tipidir, Özellikle bir taplo işlendiği zaman. Tabloya göre sütun ve satır olarak veriyi depolar. Örnekte R da veri kümesi olan BOD(Biyo kimyasal oksijen ihtiyacı) verisini kullanalım. BOD bir veriçerçevesidir Örnek x < BOD : veri kümesini x değişkenine atandı. is.data. f rame(x) : x in bir veri çerçevesiolup olmadığı kontrol ediliyor class(x) : x verisi sınıflandırılıyor x[2,] : x verisinin 2. satırı ve 2. satırdaki tüm sütunlar 10

21 x$time : x verisindeki "Time" değerlerini yazdırır x$demand x verisindeki "demand" değerlerini yazdırır Vektörler R programlama dilinde vektör diğer programlama dillerinin dizilerine benzer.elemanları sıralı bir sayıda oluşturuyor. Elemanlar numerik, lojik, karakter ve karmaşık olabilir v < c(2, 3, 5.5, 7.1, 2.1, 3) : Bir vektör tanımlar assign( v, c(2, 3, 5.5, 7.1, 2.1, 3)) : yukardaki maddeyle aynı, vektör tanımlamanın diğer bir yöntemi v < 1 : 10 : 1 den 10 a kadar bir vektör dizisi oluşturur v < rep(2,10) : 10 tane 2 den oluşan bir vektör dizisi tanımlar v < seq(1,5,by = 0.5) : 1 den başkayarak 5 e kadar 0.5 artan bir vektör tanımlar v < seq(length = 10, f rom = 1,by = 0.5) : 1 den başlayarak uzunluğu 10 olana kadar 0.5 artan bir vektör tanımlar 2.2 Döngüler, Koşullar ve Durumlar For döngüsü veri < c(rep(1 : 10)) : 1 den 10 a kadar sayı içeren bir vektör tanımlar f or(ornek in veri) { print(ornek) } Açıklama:for döngüsü ile veri vektörü içindeki değerleri tek tek gösterir 11

22 f or(ornek in veri) { str < paste(ornek,,veri mevcut,sep = ) print(str) } Açıklama:Vektör değerlerini bir string ile birletirerek ekrana tek tek basar f or(ornek in veri) { i f (ornek == 3)break str < paste(ornek,,veri mevcut,sep = ) print(str) } Açıklama:Vektör değeri 3 olduğunda döngüden çıkar f or(ornek in veri) { i f (ornek%%2 == 0)next str < paste(ornek,,veri mevcut,sep = ) print(str) } Açıklama:Vektör değeri 2 ye tam bölünmeyenleri yazdırır son < length(veri) baslangic < son 2 f or(ornek in baslangic : son) str < paste(ornek,,veri mevcut,sep = ) print(str) Açıklama: vektörün son üç değerini yazdırır İf-Else veri < c(rep(1 : 10)) : 1 den 10 a kadar sayı içeren bir vektör tanımlar f or(ornek in veri) 12

23 { i f (ornek%%2! = 0)next else print(ornek) print(ornek) } Açıklama: 2 ile kalansız bölünmeyenler yazdırır i f else(veri > 6,2,1) : Veri 6 dan büyükse ekrana 2 yazdır 6 dan küçükse 1 yazdırır Repeat döngüsü Repeat "while" ve "for" döngüsüne benzerdir, bir komut bloğunu sona erene kadar yürütür toplam < 0 repeat{toplam < toplam + 1; print(toplam); i f (toplam > 6)break;} Açıklama: toplam değişkeni 6 dan büyük olana kadar döngü devam eder ve toplam değişkeni 1 er 1 er artar Which Which() fonksiyonu mantıksal bir nesnenin "TRUE"indexini verir,dizi indeksine izin verir which(letters == h ) : h harfinin alfabedeki sırasını verir which(bod$demand == 16) : BOD verisindeki demand değeri 16 ya eşit olan karşılığını verir x < matrix(1 : 9,3,3) : 3x3 lük 1 den 9 a kadar bir matrix tanımlar which(x%%3 == 0, arr.ind = T RUE): x matrix inden 3 e tam bölünenlerin satır ve sütun numaralarını gösterir which(x%%3 == 0,arr.ind = FALSE) : x matrix inden 3 e tam bölünenleri gösterir 13

24 2.2.5 While While() döngüsü şartlar yerine getirilene kadar komutlar bloğunu çalıştırır x < 1 while(x < 5) { x < x + 1; print(x); } Açıklama: x, 5 ten küçük olduğu sürece 1 er 1 er artırılarak ekrana yazdırılır while(x < 5) { x < x + 1; i f (x == 3)break; print(x);} : x, 3 e eşit olduğunda döngüden çıkar while(x < 5) { x < x + 1; i f (x == 3)next; print(x); } Açıklama: x, 3 e eşit olduğunda bir bir sonraki değere gitmesini ifade eder 2.3 Çizimler ve Grafikler Barplot ile Çubuk Grafik Çizimi x < c(3,2,6,8,4) barplot(x) Açıklama: x vektöründeki değerleri bir çubuk grafiği ile gösterir. 14

25 Şekil 7: Barplot ile çubuk grafik çizimi 1 Biraz açıklamalı çubuk grafiği çizelim barplot(x,border = tan2,names.arg = c( Jan, Feb, Mar, Apr, May ),+xlab = Month,ylab = Revenue,density = c(0,5,20,50,100)) Şekil 8: Barplot ile çubuk grafik çizimi 2 Açıklamalar - x, eldeki verilerimiz yani y eksenine karşılık gelen değerlerimiz - border, çubukların kenar kalınlığını belirler - names.arg, y eksenindeki verilerin x eksenindeki isimleri temsil eder - xlab, x eksenin genel adını temsil eder - ylab, y eksenin genel adını temsil eder - density, çubukların yoğunluklarını ayarlar kodlar 15

26 * A < matrix(c(3,5,7,1,9,4,6,5,2,12,2,1,7,6,8),nrow = 3,ncol = 5,byrow = T RUE) Açıklama:3x5 lik bir matrix oluşturur, "byrow=true" anlamı, matrixin dizilişini belirler yani matrix 3,5,7,1... diye sıralanır eğer FALSE olsaydı 3,1,5.. diye sıralanırdı * barplot(a,main = totalrevenue,names.arg = c( Jan, Feb, Mar, Apr, May ), xlab = month, ylab = revenue, col = c( tan2, blue, darkslategray3 )) Açıklama: "A" tanımladığımız matrix, "main" ana başığımız, "names.arg", "xlab", "ylab", yukarda açıklanmıştı. "col", matix imiz 3x5 lik olduğundan her bir çubuk 3 değeri temsil eder o yüzden 3 farklı renk tanımlanmıştır. Eğer "beside=true" parametresi yazılsaydı 3 renk aynı çubuk olmak yerine yan yana oluşurdu Şekil 10 de görüldüğü gibi, yazılmadığı için şekil 9 oluşmaktadır Şekil 9: Barplot ile çubuk grafik çizimi 3 Şekil 10: Barplot ile çubuk grafik çizimi 4 * legend(x = 0.2,y = 24,c( so ft, hardware, service ),cex =.8, col = c( tan2, blue, darkslategray3 ), pch = c(22,0,0)) Açıklama:legend() fonskiyonu bar çubuk grafinde, koordinatları belirlenen bir yere 16

27 bar çubuk grafiğindeki veriler hakkında detaylı bir şekilde kare içine açıklamalar yazar.legend fonksiyonundaki parametreler; "x",ve "y" parametreleri açıklamanın yazılacağı koordinatı belirler, c() verilerin neyi temsil ettiği yazılır, "col" açıklamaların sol tarafındaki şekillerin rengini belirler, "pch" verilerin sol tarafına nasıl bir şekil yazılacağını belirler, "cex" verileri açıklayan karenin büyüklüğünü belirler Şekil 11: Barplot ile çubuk grafik çizimi Circle draw.circle() fonksiyonu ile bir alan üzerinde çember çizer. Bu fonksiyonu çalıştırmak için öncelikle "plotrix" paketi(install.packages("plotrix")) yüklenmiş olması lazım Aşağıdaki örnekler daha önce kullandığımız "BOD" verilerini kullanacağız plot(bod) Şekil 12: Circle çizimi 1 require(plotrix) : Gerekli paket çağrılır 17

28 draw.circle(4, 14, 2, border = blue, col = tan2 ) : "(4,14,2)" ile çember boyutu belirlenir, "border="blue"" ile çemberin kenar rengin, belirler, "col="tan2"" ile çemberin iç rengi belirlenir Şekil 13: Circle çizimi Plot plot(), genel x,y çizim fonksiyonudur Öncelikle basit bir çizim yapalım x < c(1.2,3.4,1.3, 2.1,5.6,2.3,3.2,2.4,2.1,1.8,1.7,2.2) y < c(2.4,5.7,2.0, 3,13,5,6.2,4.8,4.2,3.5,3.7,5.2) plot(x, y) Şekil 14: Plot çizimi 1 Açıklama: Yukarda tanımlanmış x ve y koordinat değerleri, plot fonksiyonu ile çizimi yapılır 18

29 x < c( 2, 0.3,1.4,2.4,4.5) y < c(5, 0.5,8,2,11) plot(x, y, type = l, col = blue, xlab = AdvertiseChange, ylab = RevenueChange, main = FinancialAnalysis ) Açıklama:Burda diğer parametrelerden farklı olarak "type" parametresi bulunmakta bu parametre tipi "l(line)" olursa çizgi şeklinde aşağıda gösterildiği gibi olur, "p" olursa x in y e karşılık gelen noktası çember şeklinde gösterilir, "b" olursa "l" ve "p" parametresinin bileşimi olur, "s" olursa kare dalga şeklinde olur ve son olarak "h" olursa çizgi halinde histogram oluşur Şekil 15: Plot çizimi 2 abline(v = 0, col = red ) : abline() fonskiyonu daha önce çizilmiş bir plot yoksa çalışmaz, (0,0) noktasına çizgiyi y eksenine paralel çizer points(c(1,4),c(9,2), pch = 3,col = tan2 ) :1,4 ve 9,2 noktalarına +(pch=3) işareti koyar, "col(tan2)" noktaların tranparantlığını ayarlar x2 < c( 1.5,1,4) y2 < c(3,2,8) x2, ve y2 yukarda tanımlı olan x ve y noktaları gibi tanımlanır lines(x2,y2,col = darkolivegreen3 ) : nokların kesişim yerlerini yeşil çizgi ile birleştirir legend(x = 2.2,y = 11,c( advertise, sale ),cex =.8, col = c( blue, darkolivegreen3 ), lty = c(1, 1)) legen() fonksiyonu ile açıklamaları yazar legend() fonksiyonu parametreleri daha önce anlatılmıştı 19

30 Şekil 16: Plot çizimi 3 20

31 2.3.4 Plot PCH Sembol Tablosu Aşağıdaki tablo, R da çizimde kullanılan PCH semboller tablosu gösterilmektedir. PCH aynı zamanda karakter de olabilir Şekil 17: PCH Sembol Tablosu Plot Renk Tablosu R da 657 tane yerleşik renk adı var. "colors()" fonksiyonu tüm rengleri gösterir Şekil 18: Renk Tablosu 21

32 2.3.6 pie(pasta) Grafiği Pie() işlevi bir pasta grafiği çizer x < c(3,2,6,8,4) Pie(x) Açıklama: x vektörünün uzunluğu, 5 olduğundan pasta 5 parçaya bölünür ve sırasıyla 1. parça=3, 2. parça=2, 3. parça=6, 4. parça=8, 5. parça=4 olduğunu ifade eder Şekil 19: pie grafiği 1 pieplot(x,labels = c( Jan, Feb, Mar, Apr, May ),xlab = Month,ylab = Revenue,col = c( tan2, darkslategray3, blue, red, green ), density = c(0,5,20,50,100),main = So ftrevenue ) Şekil 20: pie grafiği 2 library(plotrix) parca <- c(10, 12, 4, 16, 8) baslik <- c("us", "UK", "Australia", "Germany", "France") pie3d(parca,labels=baslik,explode=0.1, main="pie Chart of Countries ") 22

33 Şekil 21: pie 3D grafiği Histogram x < c(10,12,4,16,8) hist(x) Şekil 22: Histogram grafiği Lines abline() fonksiyonu bir plot çizgi ekler. x < c(1.2,3.4,1.3, 2.1,5.6,2.3,3.2,2.4,2.1,1.8,1.7,2.2) y < c(2.4,5.7,2.0, 3,13,5,6.2,4.8,4.2,3.5,3.7,5.2) plot(x,y,cex =.8, pch = 1,xlab = x,ylab = y,col = black ) x2 < c(4.1,1.1, 2.3, 0.2, 1.2,2.3) y2 < c(2.3,4.2,1.2,2.1, 2,4.3) points(x2,y2,cex =.8, pch = 3,col = blue ) 23

34 Şekil 23: line grafiği 1 abline(h = 4,col = red ) abline(v = 0,col = green ) abline(a = 2,b = 2,col = blue ) Şekil 24: line grafiği Veri Okuma ve Yazma R Ortamına Excelden Veri Aktarma getwd() : Veri okumadan önce R da bulunduğumz konumu gösterir setwd() : Veriyi okumamız için bulunduğumuz konumu verinin bulunduğu konuma ayarlar list. f iles() : Ayarladıpımız konumdaki tüm dosyaları gösterir veri < read.csv( data.csv,header = T RUE ) : "data.csv" dosyası R ortamına aktarır veri : "data.csv" dosyası içindeki verileri ekrana bastırır names(veri) : "data.csv" dosyası içindeki değişken isimlerini gösterir 24

35 veri$degisken i simi : "data.csv" dosyası içindeki belirlenem değişkenin değerlerini gösterir mean(veri$degisken i simi) : "data.csv" dosyası içindeki belirlenen değişkenin değerlerinin ortalamasını alır R Ortamına txt den Veri Aktarma getwd() : Veri okumadan önce R da bulunduğumz konumu gösterir setwd() : Veriyi okumamız için bulunduğumuz konumu verinin bulunduğu konuma ayarlar list. f iles() : Ayarladıpımız konumdaki tüm dosyaları gösterir veri < read.table( t p.txt, header = T ); : "tp.txt" dosyası R ortamına aktarır veri : "tp.txt" dosyası içindeki verileri ekrana bastırır names(veri) : "tp.txt" dosyası içindeki değişken isimlerini gösterir veri$degisken i simi : "tp.txt" dosyası içindeki belirlenem değişkenin değerlerini gösterir mean(veri$degisken i simi) : "tp.txt" dosyası içindeki belirlenen değişkenin değerlerinin ortalamasını alır ncol(veri) : Verinin sütun sayısını gösterir item nrow(veri) : Verinin satır sayısını gösterir R Ortamında Veri Oluşturma gender < c( male, f emale, male ) weight < c(160, 110, 220) mydata < data. f rame(age, gender, weight) mydata 25

36 2.4.4 R Ortamına Aktarılan Verileri Görüntüleme ls() : R ortamından tanımlanan veri değşkenlerini gösterir names(mydata) : Verideki başlıkları görüntüler str(mydata) : Veriyi yapısal olarak listeler levels(mydata$gender) : Veri faktörünün seviyelerini listeler yaniyukarda tanımladığımız verinin "gender" faktör seviyeleri "male" ve "female" dir head(mydata,n = 10) : Verinin ilk "o tanesini gösterir tail(mydata,n = 5) : Verinin son 5 tanesini gösterir 2.5 Veri Yönetimi Hazır Fonksiyonlar 1. Numerik Fonksiyonlar Fonksyion abs(x) sqrt(x) ceiling(x) floor(x) round(x, digits=n) cos(x), sin(x), tan(x) log(x) Tanımı x verisinin mutlak değerini alır x verisinin kare kökünü alır x verisini bi üste yuvarlar x verisinin bi alta yuvarlar x verisinin yuvarlar ve n tane basamağını görüntüler x verisinin trigonometrik hesaplarını görüntüler x verisinin logaritmasını görüntüler 2. Karakter Fonksiyonlar 26

37 Fonksyion substr(x, start=n1, stop=n2) sub("x",replacement,y) strsplit(x, "") toupper(x) tolower(x) Tanımı x stringinin n1. karakterinden başlayarak n2. karakterine kadar olan kısmı görüntüler y stringinde bulunan x stringini replacement stringi ile yer değiştirir x stringindeki karakterleri çift tırnak içine alarak ayırır x stringindeki karakterleri hepsini büyük yapar x stringindeki karakterleri hepsini küçük yapar Fonksiyon Oluşturma my f unction < f unction(arg1,arg2,...) { statements return(ob ject) } Örnek 1 topla = f unction(a,b) { c = a + b return(c) } Kullanımı topla(5, 9) Örnek 2 hesap = f unction(a,b) { c = a + b d = a b cat( c =,c, d =,d) return(list(toplam = c, f ark = d)) 27

38 } Kullanımı hesap(8, 5) Açıklama: cat() fonskiyonu veriyi ekranda göstermeye yarar Özel Fonksiyonlar cbind() Fonksiyonu cbind() fonksiyonu sütunlar ile vektör, matriks veya veri çerçevesini, birleştirir x < read.csv( data1.csv,header = T,sep =, ) x2 < read.csv( data2.csv,header = T,sep =, ) x3 < cbind(x,x2) x3 rbind() Fonksiyonu rbind() fonksiyonu satırlar ile vektör, matriks veya veri çerçevesini, birleştirir 28

39 x < read.csv( data1.csv,header = T,sep =, ) x2 < read.csv( data2.csv,header = T,sep =, ) x3 < rbind(x,x2) x3 2.6 R Programlama Olasılık Dağılımları Binomal Dağılım Binomal dağılım, ayrık olasılık dağılımıdır. Bir deneyde n tane bağımsız çalışmaların sonucunu açıklar. Her denemenin sadece iki sonuca sahip olduğu varsayılır, ya başarılı yada başarısız. Eğer başarılı deneme olasılığı p ise o zaman n tane bağımsız denemeli bir deneyde x başarılı sonuçlara sahip olasılık aşağıdaki gibidir Problem f (x) = ( ) n p x (1 p) (n x) where x = 0,1,2,...n x 29

40 Bir ingilizce sınavında 12 tane çoktan seçmeli sorular olduğunu varsayalım. Her bir soru için olası beş cevap vardır ve onlardan sadece biri doğrudur. Eğer bir öğrenci rastgele her sorunun cevabını bulmaya çalışırsa, dört yada daha az doğru cevaplama olasılığını bulalım Çözüm Beş olası cevap üzerinden sadece biri doğru olduğundan, bir sorunun cevabını rastgele olarak doğru olma olasılığı 1/5=0.2 dir. Aşağıdaki gibi rastgele olarak tam 4 soruyu cevaplama olasılığını bulabiliriz dbinom(4,size = 12, prob = 0.2) 4 veya daha az soruları cevaplama olasılığını bulmak için dbinom fonsiyonuna x=0,..4 uygulanır dbinom(0,size = 12, prob = 0.2) + +dbinom(1,size = 12, prob = 0.2)+ +dbinom(2,size = 12, prob = 0.2)+ +dbinom(3,size = 12, prob = 0.2)+ +dbinom(4,size = 12, prob = 0.2) Alternatif olarak toplu olasılık fonksiyonu için "pbinom" binomal dağılım kullanılabilir pbinom(4,size = 12, prob = 0.2) Poission Dağılım Poisson dağılımı bir aralıkta, bağımsız olay oluşumlarının olasılık dağılımıdır. Eğer λ aralıklar itibariyle ortalama ise, o zaman verilen aralık içinde x oluşumlara sahip olasılık: f (x) = λ x e x x! where x = 0,1,2,3.. Problem 30

41 Eğer ortalama köprüde dakikada 12 araba varsa, Belirli bir dakika içinde köprüde 17 veya daha fazla araba olma olasılığını bulun Çözüm Belirli bir dakika içinde köprüde 17 veya daha az araba olma olasılığı, "ppois" ile verilir ppois(16, lambda = 12) : lower tail Dolayısıyla bir dakika içinde köprü, 17 veya daha fazla araba geçişine sahip olma olasılığı, olası yoğunluk fonksiyonun üst kısmıdır ppois(16,lambda = 12,lower = FALSE) : U p tail Normal Dağılım Normal dağılım, aşağıdaki olasılık yoğunluk fonksiyonu ile tanımlanır, burda µ, populasyon ortalaması,σ 2 ise varyanstır f (x) = 1 σ 2n e (x m)2 /2σ 2 Eğer rastgele bir x değişkenini, normal dağılım takip ediyorsa, o zaman aşağıdaki yazılır X N(µ,σ 2 ) Özellikle, µ=0 ve σ =1 ise normal dağılım, standart normal dağılım olarak ve N(0,1) olarak ifade edilir Merkez limit teoremi nedeniyle, normal dağılım önemlidir. n sonsuza yaklaştığı zaman ortalama µ ve σ 2 /n ile normal dağılıma yaklaşır. ortalama µ ve σ 2 ile bir populasyondan n boyutunda olası tüm örneklerin populasyonunu ifade eder Problem 31

42 Bir üniversite giriş sınavı test puanları normal dağılıma uygun olduğunu varsayalım. Ayrıca, ortalama test puanı 72 ve standart sapması 15.2 dir. sınavda 84 yada daha fazla alan öğrencilerin yüzdesi kaçtır Çözüm Ortalama 72 ve standart sapma 15.2 ie normal dağılımın "pnorm" fonksiyonu uygulanır. Çünkü 84 ten daha yüksek alan öğrencilerin yüzdesi istenmekte. Normal dağılım üst kuyruğuna bakılır pnorm(84,mean = 72,sd = 15.2,lower.tail = FALSE) Sürekli Düzgün Dağılım Sürekli düzgün dağılım, a ve b arasında sürekli aralıktan, rastgele sayı seçiminin olasılık dağılımdır. Yoğunluk fonksiyonu aşağıdaki fonksiyonla tanımlanır 1 b a when a x b f (x) = 0 whenx < a or x > b Problem 1 ve 3 arasında rastgele 10 tane sayı seçin Çözüm 1 ve 3 arasında 10 tane rastgele sayı üretmek için sürekli dağılımın üretim fonksiyonu runif i uygulanır 32

43 runi f (10,min = 1,max = 3) Üssel Dağılım Üssel dağılım, rastgele olarak yenilenen bağımsız olay dizisinin varış zamanını tanımlar Eğer µ bir sonraki olay tekrarında ortalama bekleme süresi ise, olası yoğunluk fonksiyonu: f (x) = 1 µ e x/µ when x 0 0 when x < 0 Problem Bir süpermarket kasiyerin ortalama ödeme süresi 3 dakika olduğunu varsayalım. Bir müşterinin ödeme olasılığını 2 dakikadan daha az sürede kasiyer tarafından tamamlanmasını bulun Çözüm Ödeme işlemi oranı, ortalama ödeme tamamlanma süresinin bölü birine eşittir. Dolayısıyla işlem hızı dakikada 1/3 tür. Daha sonra, 1/3 oran ile üssel dağılımın "pexp" fonksiyonu ile hesaplanır pexp(2, rate = 1/3) 33

44 3 R PAKET UYGULAMALARI 3.1 Karekök Almayı Gerçekleştiren Yapay Sinir Ağı Oluştuma Uygulamanın Amacı Bu uygulamada, bir sayı alabilen ve karakökünü(mümkün olduğunca yakın) hesaplayabilen bir yapay ağ oluşturacağız Uygulamanın İçeriği Yapay sinir ağımız tek bir giriş alacak,(karakökünü almasını istediğimiz bir sayı) ve tek bir çıkış üretecek(girişin karakökü). Yapay sinir ağı, kendiğini eğitmek için 10 tane gizli nöron içermektedir Ugulamanın Aşamaları 1. Yapay sinir ağı oluşturmak için R a "neuralnet" paketinin yüklenmesi ve kullanmak için "neuralnet" paketinin eklenmesi 2. 0 ve 100 arasında eşit olarak dağıtılan 50 tane rastgele sayı üretmek 3. Üretilen sayıları dataframe olarak tutulması 4. Üretilen sayıların karakökünü tutan bir vektör tanımlamak 5. Sütunlar ile veriyi birleştirip bir değişkene atama 6. Verilerin bulunduğu sütunlara isim verme 7. Net hesabı 8. Sonuçları yazdırma 9. Yapay ağımızı çizme 10. Test verisi oluşturma 34

45 11. Test verisinin sonuçlarını hesaplama Ugulamanın R kodları install.packages( neuralnet ) library( neuralnet ) egitim_girileri < as.data. f rame(runi f (50,min = 0,max = 100)) egitim_cikisleri < sqrt(egitim_girileri) egitim_verisi < cbind(egitim_girileri, egitim_cikisleri) colnames(egitim_verisi) < c( Giris, Cikis ) net.sqrt < neuralnet(cikis Giris, egitim_verisi, hidden = 10, threshold = 0.01) print(net.sqrt) plot(net.sqrt) Şekil 25: Karekök Almayı Gerçekleştiren Yapay Sinir Ağı test_verisi < as.data. f rame((1 : 10) 2 ) net.results < compute(net.sqrt, test_verisi) ls(net.results) yeni_cikislar < cbind(egitim_verisi, sqrt(egitim_verisi), as.data. f rame(net.results$net.result)) colnames(yeni_cikislar) < c( Girisler, BeklenenCikisler, AginCikislarß ) print(yeni_cikislar) 35

46 3.1.5 Uygulamanın Sonucu Bu uygulamada oluşturulan ağ, eğitim verileri(eğitim girişi ve eğitim çıkışı) ile eğitilerek bir sayının kareköküne en yakın değerlerine ulaşılması sağlandı 3.2 İris Verisini sınıflandıran Yapay Sinir Ağı Oluştuma Uygulamanın Amacı Bu uygulamada, İris verisini nnet(perceptron) paketi ile sınıflandırma Uygulamanın İçeriği Yapay sinir ağımız 4 girişli, tek çıkışlı ve 1 gizli katmanda oluşmaktadır ve sınıflandırma olarak "çiçek türü" referans almaktadır Ugulamanın Aşamaları 1. Yapay sinir ağı oluşturmak için R a "nnet" paketinin yüklenmesi ve kullanmak için "nnet" paketinin eklenmesi 2. Verinin eklenmesi ve Düzenlenmesi 3. Verinin sınıflandırılması 4. Oluşturulan Ağın çizmi 5. ağın test aşaması Ugulamanın R kodları install.packages( datasets ) install.packages( nnet ) 36

47 library(datasets) library(nnet) ir < rbind(iris3[,,1],iris3[,,2],iris3[,,3]) targets < class.ind(c(rep( s,50),rep( c,50),rep( v,50))) samp < c(sample(1 : 50,25),sample(51 : 100,25),sample(101 : 150,25)) ir1 < nnet(ir[samp,],targets[samp,],size = 2,rang = 0.1,decay = 5e 4,maxit = 200) par(mar = numeric(4), f amily = seri f ) plot.nnet(ir1, pos.col = darkgreen,neg.col = darkblue,al pha.val = 0.7,rel.rsc = 15,circle.cex = 10,cex = 1.4,circle.col = brown ) Şekil 26: İris Veri Sınıflandırmasını Gerçekleştiren Yapay Sinir Ağı test.cl < f unction(true, pred)true < max.col(true)cres < max.col(pred)table(true, cres) test.cl(targets[ samp,], predict(ir1, ir[ samp,])) Şekil 27: İris Veri Sınıflandırmasını Gerçekleştiren Yapay Sinir Ağının Testi 37

48 3.2.5 Uygulamanın Sonucu Bu uygulamada oluşturulan ağ, eğitim verileri(eğitim girişi ve eğitim çıkışı) ile eğitilerek en iyi model oluşturulmuştur 3.3 Yapay Sinir Ağı ile "Dataset" paketindeki "infert" verisini sınıflandırma Uygulamanın Amacı "Dataset" paketinde bulunan "infert" verisinin sahip olduğu "case" değişkenine göre sınıflandırma Uygulamanın İçeriği "Dataset" paketinde bulunan 248 gözlem ve 8 değişkene sahip "infert" verisinin 2 gizli "age","parity","induced","spontaneous" değişkenlerinin giriş olarak kullanarak "case durumlarını sınıfladırma Ugulamanın Aşamaları 1. Veriyi elde etmek için "Dataset" kütüphanesinin çağrılması 2. Ağı eğitmek için "neuralnet" kütüphanesinin çağrılması 3. Elde edilen veri ile "neuralnet" kütüphanesinin fonksiyonları ile ağı eğitme 4. Elde edilen ağı çizme Ugulamanın R kodları library(datasets) 38

49 names(in f ert) library(neuralnet) nn < neuralnet(case age+ parity+induced +spontaneous,data = in f ert,hidden = 2,err. f ct = ce, linear.out put = FALSE) names(nn) nn$result.matrix out < cbind(nn$covariate, nn$net.result[[1]]) dimnames(out) < list(null, c( age, parity, induced, spontaneous, nn out put )) head(out) head(nn$generalized.weights[[1]]) plot(nn) Şekil 28: Infert Verisi Sınıladıran Yapay Sinir Ağı Modeli 3.4 Yapay Sinir Ağı ile Kredi Derecelendirmesi Uygulaması Uygulamanın Amacı Önceden elde edilen müşteri verilerin yapay sinir ağı ile eğiterek kredi verilmesi uygun bulunup bulunmamasına göre öğrenme gerçekleştirilmştir ve yeni gelen müşterilere kredi verilip verilmemisi ağa göre hesaplanmıştır. 39

50 3.4.2 Uygulamanın İçeriği Öğrenme için elde edilen eğitim verisi 2000 gözlem ve 6 değişkene sahip bu değişkenler "client id", "income", "age", "loan", "LTI", "default10yr" dir. Ağ girişi olarak "age" ve "LTI(the loan to yearly income ratio)" ele alınmıştır ve çıkış olarak "default10yr" tir Uygulamanın Aşamaları 1. Veriyi R ortamına ekleme 2. Eğitim ve Test verisi oluşturma 3. Ağı eğitmek için "neuralnet" kütüphanesinin çağrılması 4. Elde edilen eğitim verisi ile ağı eğitme 5. Elde edilen ağı çizme 6. Test verisi ile ağı test etme Ugulamanın R kodları library( neuralnet ) getwd() setwd( C : /Users/acer/Desktop ) dataset < read.csv( creditset.csv ) head(dataset) str(dataset) trainset < dataset[1 : 800,] testset < dataset[801 : 2000,] creditnet < neuralnet(de f ault10yr LT I +age,trainset,hidden = 4,li f esign = minimal,linear.out pu FALSE, threshold = 0.1) 40

51 plot(creditnet, rep = best ) Şekil 29: Kredi Derecelendirme Gerçekleştiren Yapay Sinir Ağı temp_test < subset(testset, select = c( LT I, age )) creditnet.results < compute(creditnet, temp_test) head(temp t est) results < data. f rame(actual = testset$de f ault10yr, prediction = creditnet.results$net.result) results[180 : 215,] results$prediction < round(results$prediction) results[180 : 215,] 3.5 Web Ortamında Dinamik Veri Analizi Uygulamanın Amacı "Dataset" paketinde bulunan hazır verileri veya sonradan eklenilen verileri Web Ortamında dinamik bir şekilde analiz edilmesi gerçeklenmiştir 41

52 3.5.2 Uygulamanın İçeriği Uygulamada Shiny paketi ile gerçekleştirilen web arayüzünde eklenilen verilerin özeti, veri yapısı, veri değişkenleriin iişki çizimleri ve veri modellenmesi gerçekleştirilmiştir Uygulama Şekil 30: Shiny Paket Uygulması 3.6 Yapay sinir Ağı ile Animasyon Örneği Uygulama Şekil 31: nnet ve animation Paket Uygulması 42

53 ARAŞTIRMA BULGULARI VE TARTIŞMA Yapılan uygulamalar sonucunda R programlama dilinin istatistiksel, veri madenciliği, veri analizi ve görselleştirme(grafik) gibi konularda çok iyi olduğu tespit edilmiştir. Diğer programlama dillerini geride bırakarak kullanıcı sayısı sürekli olarak artmaktadır, Verinin sürekli artığı bir dünyada bu verilerin analizi için R bir adım öne çıkmaktadır. 43

54 SONUÇLAR VE ÖNERİLER Bu çalışmada, son yıllarda akademik çalışmalarda yaygın olarak kullanılan R programlama dilinin tanıtılması hedeflenmiştir. R, ücretsiz olarak temin edilmesi ve dünyanın çeşitli bölgelerindeki araştırmacıların bu dilin gelişimine destek vermesi sonucunda, özellikle veri işleme ve çözümleme alanlarında çalışan kullanıcıların dikkatini çekmiştir 44

55 KAYNAKLAR [1]http://cran.us.r-project.org/doc/manuals/r-patched/R-lang.html [2]ab.org.tr/ab10/sunum/37.pdf [3]inet-tr.org.tr/inetconf19/sunum/16.pdf [4]http://datawarehouse.gen.tr/r-programi-ve-ozellikleri/ [5]mmfdergi.ogu.edu.tr/mmfdrg/2005-2/6.pdf [6]http://tr.wikipedia.org/ [7]http://www.endmemo.com/program/R [8]http://www.statmethods.net/ [9]http://www.rdatamining.com/ [9]http://www.rdatamining.com/ [9]http://www.rdatamining.com/ [10]http://www.r-bloggers.com/ [11]https://github.com/ 45

56 ÖZGEÇMİŞ KİŞİSEL BİLGİLER Adı Soyadı :ŞÜKRÜ ERGÜNTOP Uyruğu : T.C Doğum Yeri ve Tarihi: VAN/ Adres : - - Telefon : EĞİTİM DURUMU Lisans Öğrenimi : Bilecik Şeyh Edebali Üniverstesi, Bilecik Bitirme Yılı : 2015 Lise : - İŞ DENEYİMLERİ Yıl : - Kurum : - Stajlar : TRT Bilgi İşlem Dairesi(Yazılımı ve Donanım) İLGİ ALANLARI YABANCI DİLLER : Orta 46

R ile Programlamaya Giriş ve Uygulamalar

R ile Programlamaya Giriş ve Uygulamalar R ile Programlamaya Giriş ve Uygulamalar İçerik R ye genel bakış R dili R nedir, ne değildir? Neden R? Arayüz Çalışma alanı Yardım R ile çalışmak Paketler Veri okuma/yazma İşleme Grafik oluşturma Uygulamalar

Detaylı

Javascript. 1) Notepad++ aşağıdaki kodları yazıp deneme.html olarak kaydedelim. 2) Biraz önceki sayfa sadece html kodların içeriyordu.

Javascript. 1) Notepad++ aşağıdaki kodları yazıp deneme.html olarak kaydedelim. 2) Biraz önceki sayfa sadece html kodların içeriyordu. Javascript Html sayfalarının içine yazılarak, sayfayı daha etkileşimli hale getirir. click olayları, uyarı mesajları gibi hareketlerle sayfayı daha dinamik hale getirir. Javascript olmadan yazılan html

Detaylı

SPSS (Statistical Package for Social Sciences)

SPSS (Statistical Package for Social Sciences) SPSS (Statistical Package for Social Sciences) SPSS Data Editor: Microsoft Excel formatına benzer satır ve sütunlardan oluşan çalışma sayfası (*sav) Data Editör iki arayüzden oluşur. 1. Data View 2. Variable

Detaylı

MatLab. Mustafa Coşar mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar

MatLab. Mustafa Coşar mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar MatLab Mustafa Coşar mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar Sunum Planı MatLab Hakkında Ekran Yapısı Programlama Yapısı Matlab da Programlamaya Giriş Sorular MatLab Hakkında MatLab;

Detaylı

HSancak Nesne Tabanlı Programlama I Ders Notları

HSancak Nesne Tabanlı Programlama I Ders Notları DİZİLER Bellekte ard arda yer alan aynı türden nesneler kümesine dizi (array) denilir. Bir dizi içerisindeki bütün elemanlara aynı isimle ulaşılır. Yani dizideki bütün elemanların isimleri ortaktır. Elemanlar

Detaylı

=~ Metodu 92 Karakter Sınıfları 94 sub ve gsub metotları 101 Hızlı Tekrar 102 Kontrol Noktası 103 Düello 106 Sonraki Bölümde 109

=~ Metodu 92 Karakter Sınıfları 94 sub ve gsub metotları 101 Hızlı Tekrar 102 Kontrol Noktası 103 Düello 106 Sonraki Bölümde 109 vii 1 Neden Ruby? 2 Ruby Kurulumu 5 Windows ta Ruby Kurulumu 5 Linux ve Mac OS ta Ruby Kurulumu 6 Doğru Geliştirme Ortamının Seçimi 6 Diğer Ruby Uyarlamaları 9 Örnek Kodlar Hakkında 10 İnternet Adresi

Detaylı

Algoritma ve Akış Diyagramları

Algoritma ve Akış Diyagramları Algoritma ve Akış Diyagramları Bir problemin çözümüne ulaşabilmek için izlenecek ardışık mantık ve işlem dizisine ALGORİTMA, algoritmanın çizimsel gösterimine ise AKIŞ DİYAGRAMI adı verilir 1 Akış diyagramları

Detaylı

MATLAB a GİRİŞ. Doç. Dr. Mehmet İTİK. Karadeniz Teknik Üniversitesi Makine Mühendisliği Bölümü

MATLAB a GİRİŞ. Doç. Dr. Mehmet İTİK. Karadeniz Teknik Üniversitesi Makine Mühendisliği Bölümü MATLAB a GİRİŞ Doç. Dr. Mehmet İTİK Karadeniz Teknik Üniversitesi Makine Mühendisliği Bölümü İçerik: MATLAB nedir? MATLAB arayüzü ve Bileşenleri (Toolbox) Değişkenler, Matris ve Vektörler Aritmetik işlemler

Detaylı

İÇİNDEKİLER İÇİNDEKİLER KODLAB

İÇİNDEKİLER İÇİNDEKİLER KODLAB İÇİNDEKİLER IX İÇİNDEKİLER 1 GİRİŞ 1 Kitabın Amacı 1 Algoritmanın Önemi 2 Bilgisayarın Doğuşu ve Kullanım Amaçları 3 Programlama Dili Nedir? 3 Entegre Geliştirme Ortamı (IDE) Nedir? 4 2 ALGORİTMA VE AKIŞ

Detaylı

Adım Adım SPSS. 1- Data Girişi ve Düzenlemesi 2- Hızlı Menü. Y. Doç. Dr. İbrahim Turan Nisan 2011

Adım Adım SPSS. 1- Data Girişi ve Düzenlemesi 2- Hızlı Menü. Y. Doç. Dr. İbrahim Turan Nisan 2011 Adım Adım SPSS 1- Data Girişi ve Düzenlemesi 2- Hızlı Menü Y. Doç. Dr. İbrahim Turan Nisan 2011 File (Dosya) Menüsü Excel dosyalarını SPSS e aktarma Variable View (Değişken Görünümü 1- Name (İsim - Kod)

Detaylı

Bilgisayar Programlama MATLAB

Bilgisayar Programlama MATLAB What is a computer??? Bilgisayar Programlama MATLAB Prof. Dr. İrfan KAYMAZ What Konular is a computer??? MATLAB ortamının tanıtımı Matlab sistemi (ara yüzey tanıtımı) a) Geliştirme ortamı b) Komut penceresi

Detaylı

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş Yard. Doç. Dr. Alper Kürşat Uysal Bilgisayar Mühendisliği Bölümü akuysal@anadolu.edu.tr Ders Web Sayfası: http://ceng.anadolu.edu.tr/ders.aspx?dersid=101

Detaylı

13 Aralık 2007. Đlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL. Đlgili Modül/ler : Raporlar. Kullanıcı Tanımlı Raporlar Bölümünden Yapabildiklerimiz

13 Aralık 2007. Đlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL. Đlgili Modül/ler : Raporlar. Kullanıcı Tanımlı Raporlar Bölümünden Yapabildiklerimiz 13 Aralık 2007 Đlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL Đlgili Modül/ler : Raporlar KULLANICI TANIMLI RAPORLAR Kullanıcı Tanımlı Raporlar Bölümünden Yapabildiklerimiz Kendi isteklerinize özel rapor tasarımları

Detaylı

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ Dersin Adı Kodu Sınıf / Y.Y. Ders Saati (T+U+L) Kredi AKTS PROGRAMLAMA BG-213 2/1 2+0+2 2+1 5 Dersin Dili : TÜRKÇE Dersin Seviyesi : LİSANS

Detaylı

BİLGİSAYAR PROGRAMLAMA MATLAB

BİLGİSAYAR PROGRAMLAMA MATLAB BİLGİSAYAR PROGRAMLAMA MATLAB Arş. Gör. Ahmet ARDAHANLI Kafkas Üniversitesi Mühendislik Fakültesi Bu hafta? 1. Matlab ve Programlama Ortamı 2. Matlab Komut Penceresi 3. Matlab de değişken tanımlama 4.

Detaylı

SELÇUK ÜNİVERSİTESİ SEYDİŞEHİR MESLEK YÜKSEKOKULU BİLGİSAYAR TEKNOLOJİLERİ BÖLÜMÜ BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS DAĞILIM ÇİZELGESİ (2010)

SELÇUK ÜNİVERSİTESİ SEYDİŞEHİR MESLEK YÜKSEKOKULU BİLGİSAYAR TEKNOLOJİLERİ BÖLÜMÜ BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS DAĞILIM ÇİZELGESİ (2010) SELÇUK ÜNİVERSİTESİ SEYDİŞEHİR MESLEK YÜKSEKOKULU BİLGİSAYAR TEKNOLOJİLERİ BÖLÜMÜ BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS DAĞILIM ÇİZELGESİ (2010) 1. SINIF GÜZ YARIYILI 6913130 Atatürk İlkeleri ve İnkılap

Detaylı

BEDEN EĞİTİMİ I: Haftalık ders 1 saattir (T-0 ) (U-l) (K-0).

BEDEN EĞİTİMİ I: Haftalık ders 1 saattir (T-0 ) (U-l) (K-0). I.SINIF-1.YARIYIL TÜRK DİLİ I : Haftalık ders 2 saattir (T-2 ) (U-0) (K-2). Ders İçeriği; % 10 Dil, Diller ve Türk Dili, % 15 Dil Bilgisi, Sözcük ve Cümle % 25 Kelime Türleri % 25 Anlatım Öğeleri ve Anlatım

Detaylı

Öğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1

Öğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1 Öğr. Gör. Serkan AKSU http://www.serkanaksu.net http://www.serkanaksu.net/ 1 JavaScript JavaScript Nedir? Nestcape firması tarafından C dilinden esinlenerek yazılmış, Netscape Navigator 2.0 ile birlikte

Detaylı

Öğr. Gör. Cansu AYVAZ GÜVEN VERİTABANI-II. Değişken Tanımlama Ve Akış Kontrol Deyimleri

Öğr. Gör. Cansu AYVAZ GÜVEN VERİTABANI-II. Değişken Tanımlama Ve Akış Kontrol Deyimleri Öğr. Gör. Cansu AYVAZ GÜVEN VERİTABANI-II Değişken Tanımlama Ve Akış Kontrol Deyimleri Değişken Nedir? Değişkenler, programın veya kodların icra süresince belirli bir değer tutan ve istenilirse bu değer

Detaylı

SQL (Structured Query Language)

SQL (Structured Query Language) SQL (Structured Query Language) Genel SQL SQL çok yüksek seviyeli bir dildir. Biraz ingilizce bilgisi gerektirir. Programlama dillerine göre öğrenilmesi çok daha kolaydır. Çünkü programlama dillerindeki

Detaylı

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi Bil101 Bilgisayar Yazılımı I Bilgisayar Yüksek Mühendisi Editör Disk 1)Kaynak kodlar editör aracılığı ile oluşturulur. (.c) Kaynak dosya Önişleyici Disk 2)Önişleyici kodlar içerisindeki ilk işleme işini

Detaylı

Yazılım Nedir? 2. Yazılımın Tarihçesi 3. Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5. Yazılımın Önemi 6

Yazılım Nedir? 2. Yazılımın Tarihçesi 3. Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5. Yazılımın Önemi 6 ix Yazılım Nedir? 2 Yazılımın Tarihçesi 3 Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5 Yazılımın Önemi 6 Yazılımcı (Programcı) Kimdir? 8 Yazılımcı Olmak 9 Adım Adım Yazılımcılık 9 Uzman

Detaylı

5. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ. hakanyilmaz@karabuk.edu.tr

5. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ. hakanyilmaz@karabuk.edu.tr 5. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II Öğr.Gör. Hakan YILMAZ hakanyilmaz@karabuk.edu.tr Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 2 İçindekiler STRING FONKSİYONU... 3 SPLIT FONKSİYONU...

Detaylı

Bir dizinin boyutları sabittir ve kullanılmadan önce belirlenmelidir. Dizi boyutunu belirlemek için başka bir değişkende kullanabilirsiniz.

Bir dizinin boyutları sabittir ve kullanılmadan önce belirlenmelidir. Dizi boyutunu belirlemek için başka bir değişkende kullanabilirsiniz. C# da Diziler Diziler için aynı tipteki verilerin tutulduğu bir koleksiyon diyebiliriz. Örneğin integer verinin bir yığın şeklinde tutulması için dizileri kullanırız. C# da diziler referans tipinde değişkenlerdendir.

Detaylı

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf İçindekiler 1. Giriş... 1 1.2. c++ Programı Yapısı... 2 1.3.Using Direktifi... 5 Bölüm 2. Veri türleri, değişken kavramı, sabit ve değişken bildirimleri ve c++ da kullanımı 7 2.1. Temel veri türleri...

Detaylı

1. VERİ TABANI KAVRAMLARI VE VERİ TABANI OLUŞTUMA

1. VERİ TABANI KAVRAMLARI VE VERİ TABANI OLUŞTUMA BÖLÜM15 D- VERİ TABANI PROGRAMI 1. VERİ TABANI KAVRAMLARI VE VERİ TABANI OLUŞTUMA 1.1. Veri Tabanı Kavramları Veritabanı (DataBase) : En genel tanımıyla, kullanım amacına uygun olarak düzenlenmiş veriler

Detaylı

Ekran Arayüzü ve Obje Seçimi (V )

Ekran Arayüzü ve Obje Seçimi (V ) FieldGenius harita ekranı tüm menülere ulaşımın sağlandığı ana ekrandır. Çizim ekranı dinamik özelliklere sahip olup objeler grafik ekrandan seçilebilir. Bu sayede nokta aplikasyonu, mesafe ölçümü gibi

Detaylı

EM205 26/9/2014. Programlamaya giriş Algoritmalar. Amaçlar

EM205 26/9/2014. Programlamaya giriş Algoritmalar. Amaçlar EM205 26/9/2014 Programlamaya giriş Algoritmalar Temel kavramlar Algoritmalar Amaçlar Algoritma kavramını öğrenmek, Algoritmaları ifade edebilmek, Temel matematiksel algoritmaları yazabilmek C programlama

Detaylı

Veri Yapıları ve Algoritmalar

Veri Yapıları ve Algoritmalar 1 Ders Not Sistemi Vize : % 40 Final : % 60 Kaynaklar Kitap : Veri Yapıları ve Algoritma Temelleri Yazar: Dr. Sefer KURNAZ Internet Konularla ilgili web siteleri 2 Algoritma : «Belirli bir problemin çözümünde

Detaylı

1. LabVIEW ile Programlama

1. LabVIEW ile Programlama 1. LabVIEW ile Programlama LabVIEW ile programlama mantığı, program kodu yazılan programlama mantığına benzemekle birlikte, kontrol adı verilen nesneler arasında veri yolu bağlantısı ile program akışı

Detaylı

1 PROGRAMLAMAYA GİRİŞ

1 PROGRAMLAMAYA GİRİŞ İÇİNDEKİLER IX İÇİNDEKİLER 1 PROGRAMLAMAYA GİRİŞ 1 Problem Çözme 1 Algoritma 1 Algoritmada Olması Gereken Özellikler 2 Programlama Dilleri 6 Programlama Dillerinin Tarihçesi 6 Fortran (Formula Translator)

Detaylı

Microsoft Excel. Çalışma Alanı. Hızlı Erişim Çubuğu Sekmeler Başlık Formül Çubuğu. Ad Kutusu. Sütunlar. Satırlar. Hücre. Kaydırma Çubukları

Microsoft Excel. Çalışma Alanı. Hızlı Erişim Çubuğu Sekmeler Başlık Formül Çubuğu. Ad Kutusu. Sütunlar. Satırlar. Hücre. Kaydırma Çubukları Microsoft Excel Microsoft Excel yazılımı bir hesap tablosu programıdır. Excel, her türlü veriyi (özellikle sayısal verileri) tablolar ya da listeler halinde tutma ve bu verilerle ilgili ihtiyaç duyacağınız

Detaylı

Fonksiyonlar (Altprogram)

Fonksiyonlar (Altprogram) Fonksiyonlar (Altprogram) C Programlama Dili fonksiyon olarak adlandırılan alt programların birleştirilmesi kavramına dayanır. Bir C programı bir ya da daha çok fonksiyonun bir araya gelmesi ile oluşur.

Detaylı

Excel Nedir? Microsoft Excell. Excel de Çalışma sayfası-tablo

Excel Nedir? Microsoft Excell. Excel de Çalışma sayfası-tablo Microsoft Excell Excel Nedir? Excel programı; veriler üzerinde hesap yapabilme, verileri tabloya dönüştürebilme, verileri karşılaştırıp sonuç üretebilme, grafik oluşturma, veri yönetimi yapabilir. http://mf.dpu.edu.tr/~eyup

Detaylı

SQL PROGRAMLAMA. Bir batch, bir arada bulunan bir dizi SQL deyimidir. Batch ayıracı GO deyimidir.

SQL PROGRAMLAMA. Bir batch, bir arada bulunan bir dizi SQL deyimidir. Batch ayıracı GO deyimidir. SQL PROGRAMLAMA BATCH Bir batch, bir arada bulunan bir dizi SQL deyimidir. Batch ayıracı deyimidir. SELECT. UPDATE...... DELETE.. BATCH BATCH Özellikleri 1- Bir batch içinde bir deyimde yazım hatası olduğunda

Detaylı

3. Aşağıdakilerden hangisi B5 hücresinin değerini getirir (Kopyalar)? a-) =B5 b-) B5 c-) =B(5) d-) =5B

3. Aşağıdakilerden hangisi B5 hücresinin değerini getirir (Kopyalar)? a-) =B5 b-) B5 c-) =B(5) d-) =5B 1. Aşağıdakilerden hangisi hücrenin içini desen ile doldurur? a-) Biçim - Hücreler -Yazı Tipi b-) Biçim - Hücreler - Desen c-) Biçim - Hücreler Kenarlık d-) Biçim - Hücreler Hizalama 2. Aşağıdaki fonksiyonlardan

Detaylı

D.Saati AKTS Zorunlu Ders (Z) 23 28 Meslek Dersi (M) 60 62 Seçmeli Ders (S) 13 30 TOPLAM 96 120

D.Saati AKTS Zorunlu Ders (Z) 23 28 Meslek Dersi (M) 60 62 Seçmeli Ders (S) 13 30 TOPLAM 96 120 SELÇUK ÜNİVERSİTESİ SEYDİŞEHİR MESLEK YÜKSEKOKULU BİLGİSAYAR TEKNOLOJİLERİ BÖLÜMÜ BİLGİSAYAR PROGRAMCILIĞI PROGRAMI NORMAL ÖĞRETİM DERS DAĞILIM ÇİZELGESİ 1. SINIF GÜZ YARIYILI ( I. YARIYIL) 1 6913130 Atatürk

Detaylı

Bölüm 10: PHP ile Veritabanı Uygulamaları

Bölüm 10: PHP ile Veritabanı Uygulamaları Bölüm 10: PHP ile Veritabanı Uygulamaları -231- Öğr.Gör. Serkan DİŞLİTAŞ 10.1. PHP PHP, platformdan bağımsız sunucu taraflı çalışan betik bir web programlama dilidir. PHP programlama dili ile MySQL, MSSQL,

Detaylı

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay. PROGRAMLAMAYA GİRİŞ Öğr. Gör. Ayhan KOÇ Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay., 2007 Algoritma ve Programlamaya Giriş, Ebubekir YAŞAR, Murathan Yay., 2011

Detaylı

ÜNİTE 9 ÜNİTE 9 MICROSOFT EXCEL - II TEMEL BİLGİ TEKNOLOJİLERİ İÇİNDEKİLER HEDEFLER

ÜNİTE 9 ÜNİTE 9 MICROSOFT EXCEL - II TEMEL BİLGİ TEKNOLOJİLERİ İÇİNDEKİLER HEDEFLER ÜNİTE 9 MICROSOFT EXCEL - II BAYBURT ÜNİVERSİTESİ UZAKTAN EĞİTİM MERKEZİ İÇİNDEKİLER Çalışma sayfasına yeni nesneler eklemek Veriler ile ilgili işlemler Grafikler ler Sıralama Yapmak Filtreleme Yapmak

Detaylı

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI İÇİNDEKİLER IX İÇİNDEKİLER 1 GİRİŞ 1 Kitabın Amacı 1 Algoritmanın Önemi 2 Bilgisayarın Doğuşu ve Kullanım Amaçları 3 Programlama Dili Nedir? 3 Entegre Geliştirme Ortamı (IDE) Nedir? 4 2 ALGORİTMA VE AKIŞ

Detaylı

Internet Programming II. Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı

Internet Programming II. Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı Internet Programming II Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı Öğr. Gör. Murat KEÇECĠOĞLU 11-14 May. 2014 Form Form İşlemleri Tarayıcıdan bilgi alarak işlem gerçekleştirme FORM elemanları

Detaylı

OMNET++ 4.2.2. Ağ Benzetim Yazılımı (Network Simulation Framework) BİL 372 Bilgisayar Ağları. GYTE - Bilgisayar Mühendisliği Bölümü

OMNET++ 4.2.2. Ağ Benzetim Yazılımı (Network Simulation Framework) BİL 372 Bilgisayar Ağları. GYTE - Bilgisayar Mühendisliği Bölümü Bilgisayar Mühendisliği Bölümü OMNET++ 4.2.2 Ağ Benzetim Yazılımı (Network Simulation Framework) BİL 372 Bilgisayar Ağları OMNET++ OMNET++ (Objective Modular Network Testbed in C++), nesneye yönelik (objectoriented)

Detaylı

Turquaz. Açık kodlu muhasebe yazılımı http://www.turquaz.com. Turquaz Proje Grubu

Turquaz. Açık kodlu muhasebe yazılımı http://www.turquaz.com. Turquaz Proje Grubu Turquaz Açık kodlu muhasebe yazılımı http://www.turquaz.com Turquaz Proje Grubu Konu Başlıkları 1. Turquaz Proje Grubu 2. Programın fikri 3. Geliştirme aşaması 4. Programın içeriği 5. Yapılacaklar 6. Dizayn

Detaylı

BÖLÜM 12 STUDENT T DAĞILIMI

BÖLÜM 12 STUDENT T DAĞILIMI 1 BÖLÜM 12 STUDENT T DAĞILIMI 'Student t dağılımı' ya da kısaca 't dağılımı'; normal dağılım ve Z dağılımının da içerisinde bulunduğu 'sürekli olasılık dağılımları' ailesinde yer alan dağılımlardan bir

Detaylı

ORACLE DA KÜRSÖRLER. Gerekli sistem değişkenleri

ORACLE DA KÜRSÖRLER. Gerekli sistem değişkenleri ORACLE DA KÜRSÖRLER Gerekli sistem değişkenleri SQL%ISOPEN : kürsör açıksa değeri true, kapalı ise değeri false SQL%ROWCOUNT : sql ile işlem gören kayıt sayısı bulunur. SQL%FOUND : sql işlemi sonucu, en

Detaylı

Excel' de formüller yazılırken iki farklı uygulama kullanılır. Bunlardan;

Excel' de formüller yazılırken iki farklı uygulama kullanılır. Bunlardan; 7. FORMÜLLER SEKMESİ Excel in en çok kullanılan yönü hesaplama yönüdür. Hesaplamalar Formüller aracılığıyla yapılır. Formüller sekmesi anlatılırken sık kullanılan formüller ve formül yazımı da anlatılacaktır.

Detaylı

BİLGİSAYAR PROGRAMLAMA

BİLGİSAYAR PROGRAMLAMA BİLGİSAYAR PROGRAMLAMA Yrd. Doç. Dr. Beytullah EREN beren@sakarya.edu.tr 0264 295 5642 Excel - Hücreler Excel de hücrelere hangi değerler girilebilir? Metin Rakam Tarih ve Saat Formül 1 HÜCRE SEÇİMİ Matematikteki

Detaylı

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir DİZİLER (ARRAYS) Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir değişken tanımlamak gereklidir. string gun1,

Detaylı

Programlama Dillerinde Kullanılan Veri Tipleri

Programlama Dillerinde Kullanılan Veri Tipleri Programlama Dillerinde Kullanılan Veri Tipleri Taban/Biçim Basic Paskal C/C++/C#/Java 10 (Decimal ) - - - 16 (Hexadecimal) &hsayı veya &Hsayı $sayı 0xsayı veya 0Xsayı Üstel eüs veya Eüs eüs veya Eüs eüs

Detaylı

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS DERS BİLGİLERİ Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS Matlab Programlama BIL449 7 3+0 3 5 Ön Koşul Dersleri Yok Dersin Dili Dersin Seviyesi Dersin Türü Türkçe Lisans Seçmeli / Yüz Yüze Dersin

Detaylı

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-11 Karakter Diziler. Yrd. Doç. Dr. Ümit ATİLA

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-11 Karakter Diziler. Yrd. Doç. Dr. Ümit ATİLA BLM-111 PROGRAMLAMA DİLLERİ I Ders-11 Karakter Diziler Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Karakter ve String Karakter Karakter bir sabit tek tırnak

Detaylı

Dersin Konusu ve Amaçları: Ders P lanı: Bölüm 1: Bilgi Teknolojilerinde Temel Kavramlar

Dersin Konusu ve Amaçları: Ders P lanı: Bölüm 1: Bilgi Teknolojilerinde Temel Kavramlar Bilgi Teknolojileri ve Uygulamalarına Giriş Dersin Konusu ve Amaçları: Bu dersin amacı daha önce bilgisayar ve bilgi teknolojileri alanında herhangi bir bilgi ve/veya deneyime sahip olmayan öğrenciye bilgi

Detaylı

DENEME SINAVI. ECDL BAŞLANGIÇ Hesap Tablosu

DENEME SINAVI. ECDL BAŞLANGIÇ Hesap Tablosu DENEME SINAVI ECDL BAŞLANGIÇ Hesap Tablosu 1. Hesap Çizelgesi (Microsoft Office - Excel) uygulamasını açınız. Başlat > Programlar > Microsoft Office > Microsoft Office Excel 2003 yolu izlenerek Excel programı

Detaylı

EXCEL DE BENZETİM ÖRNEKLERİ BMÜ-422 BENZETİM VE MODELLEME

EXCEL DE BENZETİM ÖRNEKLERİ BMÜ-422 BENZETİM VE MODELLEME EXCEL DE BENZETİM ÖRNEKLERİ BMÜ-422 BENZETİM VE MODELLEME GİRİŞ Bu bölümde benzetim için excel örnekleri önerilmektedir. Örnekler excel ile yapılabileceği gibi el ile de yapılabilir. Benzetim örnekleri

Detaylı

Yrd. Doç. Dr. Caner ÖZCAN

Yrd. Doç. Dr. Caner ÖZCAN Yrd. Doç. Dr. Caner ÖZCAN Grafik Programlama Bilgisayar kullanılırken monitörlerde iki tür ekran moduyla karşılaşılır. Bu ekran modları Text modu ve Grafik modu dur. Text modunda ekran 25 satır ve 80 sütundan

Detaylı

MATLAB/Değişkene Değer Atamak

MATLAB/Değişkene Değer Atamak MATLAB/Değişkene Değer Atamak input fonksiyonu klavyeden giriş yapmayı sağlayan bir fonksiyondur. degisken=input( bir deger giriniz: ) şeklinde kullanılır. =input('bir değer giriniz: ') bir değer giriniz:

Detaylı

BSM 532 KABLOSUZ AĞLARIN MODELLEMESİ VE ANALİZİ OPNET MODELER

BSM 532 KABLOSUZ AĞLARIN MODELLEMESİ VE ANALİZİ OPNET MODELER BSM 532 KABLOSUZ AĞLARIN MODELLEMESİ VE ANALİZİ OPNET MODELER Yazılımı ve Genel Özellikleri Doç.Dr. Cüneyt BAYILMIŞ Kablosuz Ağların Modellemesi ve Analizi 1 OPNET OPNET Modeler, iletişim sistemleri ve

Detaylı

İM 205-İnşaat Mühendisleri için MATLAB. Irfan Turk Fatih Üniversitesi,

İM 205-İnşaat Mühendisleri için MATLAB. Irfan Turk Fatih Üniversitesi, İM 205-İnşaat Mühendisleri için MATLAB Irfan Turk Fatih Üniversitesi, 2013-14 MATLAB Nedir? MATLAB ın açılımı MATrix LABoratory dir. MATLAB yüksek performanslı tekniksel bir programlama dilidir. Matematik,

Detaylı

TEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma

TEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma TEMEL BİLGİSAYAR BİLİMLERİ Programcılık, problem çözme ve algoritma oluşturma Programcılık, program çözme ve algoritma Program: Bilgisayara bir işlemi yaptırmak için yazılan komutlar dizisinin bütünü veya

Detaylı

Pythonda değişkenlerin türlerini tanımlamaya gerek yoktur

Pythonda değişkenlerin türlerini tanımlamaya gerek yoktur Python büyük-küçük harf ayrımı yapar. Pythonda kod yazarken girintiler kullanılır Pythonda değişkenlerin türlerini tanımlamaya gerek yoktur Klavyeden girilen bir değeri okumak ad=input("adınızı giriniz")

Detaylı

MATLAB Semineri. EM 314 Kontrol Sistemleri 1 GÜMMF Elektrik-Elektronik Müh. Bölümü. 30 Nisan / 1 Mayıs 2007

MATLAB Semineri. EM 314 Kontrol Sistemleri 1 GÜMMF Elektrik-Elektronik Müh. Bölümü. 30 Nisan / 1 Mayıs 2007 MATLAB Semineri EM 314 Kontrol Sistemleri 1 GÜMMF Elektrik-Elektronik Müh. Bölümü 30 Nisan / 1 Mayıs 2007 İçerik MATLAB Ekranı Değişkenler Operatörler Akış Kontrolü.m Dosyaları Çizim Komutları Yardım Kontrol

Detaylı

MONTE CARLO BENZETİMİ

MONTE CARLO BENZETİMİ MONTE CARLO BENZETİMİ U(0,1) rassal değişkenler kullanılarak (zamanın önemli bir rolü olmadığı) stokastik ya da deterministik problemlerin çözümünde kullanılan bir tekniktir. Monte Carlo simülasyonu, genellikle

Detaylı

Temel Bilgi Teknolojileri - II Ayrıntılı Ders İçerikleri

Temel Bilgi Teknolojileri - II Ayrıntılı Ders İçerikleri Temel Bilgi Teknolojileri - II Ayrıntılı Ders İçerikleri Hesap Tabloları(Excel 2007) HAFTA 1 1. Hesap Tablolarına Giriş 1.1. Hesap tablosu tanımı, kullanım amacı ve yerleri 1.2. MS Excel Uygulamasına giriş

Detaylı

DIV KAVRAMI