Programlama

R Yazılımında Temel İşlemler

Merhabalar uzun bir aradan sonra R Yazılımı ile ilgili yazı dizime devam ediyorum.

Sizlere bugün R Yazılımında temel işlemleri göstereceğim. Giriş düzeyinde bilgi edinmek için ideal bir yazı olacağı düşüncesindeyim

Bazı Semboller ve anlamları

 

  İşlemadı/Sembolü Sembolü İkinci Sembol
I Çarpma *  
II. Bölme /  
III. Toplama +  
IV. Çıkartma  
V. Üs Alma ^ **
VI. Logaritma Alma log()  
VII. Karekök Alma sqrt()  
VIII. Dizin Oluşturma seq()  :
IX. Ortalama Alma mean()  
X. Dizi İçi Tekrar Oluşturmak rep()  
XI. Sıralı tekrar oluşturmak each()  
XII. Açıklama Satırı Girmek #  
XIII. Maksimum max()  
XIV. Minimum min()  
XV. Matris Oluşturmak maxrix  
XVI. Dışarıdan veri okutulması read.  
XVII. Değişken Silmek rm()  
XVIII. Kayıtlı veri kontrolü ls()  
XIX. Çıkış q()  

Şimdi bu sembollerin kullanımlarını birer örnekle göstermeye çalışacağım :

I. Çarpma : Değerlerin kendi aralarında skaler biçimde çarpılmasını sağlar işlem operatörü olarak "*" kullanılır.
II. Bölme : Değerlerin kendi aralarında oranlanmasını sağlar işlem operatörü olarak "/" kullanılır. Dikkat edilmesi gereken husus "/" yerine ":" kullanılırsa bu operatör dizin oluşturmak için kullanıldığı için işlem karışıklığı meydana gelir.
III.Toplma : İki ya da daha fazla değerin kendi aralarında toplanmasını sağlar "+" sembolü ile gösterilir
IV. Çıkartma: Bir değerden bir ya da daha fazla değerin eksiltilmesi sağlar "-" sembolü ile ifade edilir.

[code lang=”R”]&lt;br /&gt;<br />
(6*12/3)+7-3&lt;br /&gt;<br />
[/code]

Yukarıda bir dörtişlem örneği bulunuyor işlemin cevabı 28 ilk etapta parantez için sonrasında dışındaki işlemler yapılıyor.

V.Üs Alma: R yazılımında üs almanın 2 yöntemi var hem "^" operatörünü kullanarak hemde iki defa çarpma operatörünü kullanarak yani "**" şeklinde üs alınabiliyor.

[code lang=”R”]&lt;br /&gt;<br />
(7-3)^3 | (7-3)**3&lt;br /&gt;<br />
[/code]

her iki ifadede aynı işlemi anlatıyor ve çıktısı 64.

VI. Logaritma Alma : Doğal logaritme yani log e 'nin hesaplanması için sadece "log" yazmak yeterli ama x tabanında y sayısının logaritmasının hesaplanabilmesi için logx(y) yazılmalı.

[code lang=”R”]&lt;br /&gt;<br />
&amp;gt; log(50)&lt;br /&gt;<br />
[1] 3.912023&lt;br /&gt;<br />
&amp;gt; log2(8)&lt;br /&gt;<br />
[1] 3&lt;br /&gt;<br />
[/code]

VII. Karakök Alma : Neredeyse bütün programlama dillerinde olduğu gibi R yazılımındada karakök alma operatörü "sqrt" ' dür.

[code lang=”R”]&lt;br /&gt;<br />
&amp;gt; sqrt(25)&lt;br /&gt;<br />
[1] 5&lt;br /&gt;<br />
[/code]

VIII. Dizin Oluşturmak : Dizin oluşturmanın iki yolu vardır birincisi iki sayıyı aralarında ":" olarak yazmak ikincisi "seq" yazarak parantez içine dizinin başlangıcı ve bitişini yazmak. Burada önemli nokta dizin artış miktarının standart olarak bir olması ve bu artış miktarı değiştirileceği zaman sona artış miktarının girilmesidir.Ayrıca başlangıç ve bitiş için yazdığınız sayılar dahildir.

[code lang=”R”]&lt;br /&gt;<br />
&amp;gt; 10:20&lt;br /&gt;<br />
[1] 10 11 12 13 14 15 16 17 18 19 20&lt;br /&gt;<br />
&amp;gt; seq(10,20)&lt;br /&gt;<br />
[1] 10 11 12 13 14 15 16 17 18 19 20&lt;br /&gt;<br />
&amp;gt; seq(10,30,4)&lt;br /&gt;<br />
[1] 10 14 18 22 26 30&lt;br /&gt;<br />
[/code]

IX. Ortalama Almak : Ortalama almak için "mean" ifadesi kullanılır.
Mesela a adında bir vektörü 10 ile 50 arasındaki bir sıralı diziye eşitleyip ortamasını alalım.

[code lang=”R”]&lt;br /&gt;<br />
&amp;gt; a=10:50&lt;br /&gt;<br />
&amp;gt; a&lt;br /&gt;<br />
[1] 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34&lt;br /&gt;<br />
[26] 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50&lt;br /&gt;<br />
&amp;gt; mean(a)&lt;br /&gt;<br />
[1] 30&lt;br /&gt;<br />
[/code]

X. Dizi İçi Tekrar oluşturmak : Oluşturulan bir dizinin belirtilen miktarda tekrarını sağlamak için "rep" komutunu kullanıyoruz.
Örneğin 7 ile 15 sayıları arasında bir dizi oluşturup bunun arka arkaya 3 kere tekrarlanmasını sağlayalım :

[code lang=”R”]&lt;br /&gt;<br />
&amp;gt; rep((7:15),3)&lt;br /&gt;<br />
[1]&amp;nbsp; 7&amp;nbsp; 8&amp;nbsp; 9 10 11 12 13 14 15&amp;nbsp; 7&amp;nbsp; 8&amp;nbsp; 9 10 11 12 13 14 15&amp;nbsp; 7&amp;nbsp; 8&amp;nbsp; 9 10 11 12 13 14 15&lt;br /&gt;<br />
[/code]

XI.Sıralı tekrar oluşturmak : Dizi içinde tekrarların bitişten sonra değilde ard arda olmasını istediğimizde "each" komutunu dizi oluştururken sona virgülle ayırıp ekliyoruz.
Örneğin yukarıdaki diziyi ardı arkaya sıralamak için :

[code lang=”R”]&lt;br /&gt;<br />
&amp;gt; rep(seq(7,15),each=3)&lt;br /&gt;<br />
[1]&amp;nbsp; 7&amp;nbsp; 7&amp;nbsp; 7&amp;nbsp; 8&amp;nbsp; 8&amp;nbsp; 8&amp;nbsp; 9&amp;nbsp; 9&amp;nbsp; 9 10 10 10 11 11 11 12 12 12 13 13 13 14 14 14 15 15 15&lt;br /&gt;<br />
[/code]

XII. Açıklama Satırı Girmek : Kodlar arasında kendimize hatırlatma yapmak için ya da kodları paylaşacağımız kişilere açıklama yapmak istediğimiz yerler oluyor bunun için "#" operatörünü kullanmak kafî.
Örnek vermek gerekirse :

[code lang=”R”]&lt;br /&gt;<br />
&amp;gt; rep(seq(7,15),each=3) # bruaya a&amp;ccedil;ıklama girebiliyoruz , dıştan i&amp;ccedil;eri gidecek olursak rep komutu tekrarı seq komutu sıralamayı each komutu da&amp;lt;/pre&amp;gt;&lt;br /&gt;<br />
[1]&amp;nbsp; 7&amp;nbsp; 7&amp;nbsp; 7&amp;nbsp; 8&amp;nbsp; 8&amp;nbsp; 8&amp;nbsp; 9&amp;nbsp; 9&amp;nbsp; 9 10 10 10 11 11 11 12 12 12 13 13 13 14 14 14 15 15 15&lt;br /&gt;<br />
[/code]

XIII Maksimum : Bir matris ya da dizinin en büyük elemanını bulmak için "max" operatörünü kullanmamız gerekiyor.
XIV Minimum : Bir matris ya da dizinin en küçük elemanını bulmak için "min" operatörünü kullanmamız gerekiyor.
XV. Matris Oluşturmak : R'de maxris oluşturmak için "matrix" operatörünü kullanıyoruz. Matrislerin birleşmiş vektörler olduğunu düşünüldüğünde "c" fonksiyonu ile beraber vektörler oluşturulur ve en sona matrisin satır,sutün sayısı belirtilerek matris oluşturulur.
Şimdi 3×3'lük 1'den 9'a kadar giden bir matris oluşturalım , ardından bu matris'in maksimum ve minimum değerlerine bakalım :

[code lang=”R”]&lt;br /&gt;<br />
&amp;gt; a=matrix(c(1,2,3,4,5,6,7,8,9),3,3)&lt;br /&gt;<br />
&amp;gt; a&lt;br /&gt;<br />
[,1] [,2] [,3]&lt;br /&gt;<br />
[1,]&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&lt;br /&gt;<br />
[2,]&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; 8&lt;br /&gt;<br />
[3,]&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp;&amp;nbsp; 9<br />
&lt;/p&gt;
</p>

<p>
&lt;p&gt;<br />
&amp;gt; max(a)&lt;br /&gt;<br />
[1] 9&lt;br /&gt;<br />
&amp;gt; min(a)&lt;br /&gt;<br />
[1] 1&lt;br /&gt;<br />
[/code]

XVII. Değişken Silmek : R'de bir değişkeni silmek için "rm" operatörünü kullanıyoruz. Çalışmadaki tüm değişkenleri silmek için "rm(list = ls())"  yazmanız yeterli olacaktır.

[code lang=”R”]&lt;br /&gt;<br />
&amp;gt; b = 13+12&lt;br /&gt;<br />
&amp;gt; b&lt;br /&gt;<br />
[1] 25&lt;br /&gt;<br />
&amp;gt; rm(b)&lt;br /&gt;<br />
&amp;gt; b&lt;br /&gt;<br />
Hata: &amp;#39;b&amp;#39; nesnesi bulunamadı&lt;br /&gt;<br />
[/code]

XVIII. Kayıtlı veri Kontrolü :

Çalışma alanını açtığınızda önceki değişkenlerin hepsini hafızanızda tutmanız mümkün değildir , hangi değişkenleri sakladığınızı görebilmek için çalışma ekranına "ls()" yazmanız yeterli olacaktır.
Eğer "character(0)" diye bir çıktı alıyorsanız bu kayıtlı herhangi bir değişkeniniz olmadığı anlamına gelir.
[code lang=”R”]&lt;br /&gt;<br />
&amp;gt; a = 15&lt;br /&gt;<br />
&amp;gt; b = 25&lt;br /&gt;<br />
&amp;gt; c = a + b&lt;br /&gt;<br />
&amp;gt; ls()&lt;br /&gt;<br />
[1] &amp;quot;a&amp;quot; &amp;quot;b&amp;quot; &amp;quot;c&amp;quot;&lt;br /&gt;<br />
[/code]

XIX. Çıkış : Çalışmanız bittiğinde köşedeki çarpıya basmanın yanı sıra çıkış için "q()" komutunu yazmanız yeterlidir. Bunu yazıp enter'a bastığınızda değişkenleri kaydetmek isteyip istemediğinizi soracaktır evet dediğiniz de bir sonraki R'i açısınızda "ls()" diyerek kayıtlı kalan değişkenleri görüntüleyebilirsiniz.


Umarım temel işlemleri yeterince açıklayıcı anlatabilmişimdir , vakit bulduğumda ileri ki safhaları da anlatacağım , bir başka yazıda görüşmek üzere hoşçakalın 🙂

Renan Reis

Yorum

Click here to post a comment