Ilk adimlar

Her zaman kod yazmaya baslamadan once onemli olan bir basamak, calistigimiz klasorun ne oldugunu bilmek, gerekirse degistirmek.

Hangi klasorde calistigimizi ogrenmek icin getwd() fonksiyonunu kullanacagiz (get working directory). Calistigimiz klasoru belirlemek icinse setwd() fonksiyonu kullaniliyor.

> getwd()
[1] "/Users/melike"
> setwd('~/Dropbox/blog/compbioscratchpad/r_baslangic/')
> getwd()
[1] "/Users/melike/Dropbox/blog/compbioscratchpad/r_baslangic"

Onerim, bilgisayarinizda R ogrenmek icin bir klasor olusturmaniz ve kodunuzu, kullandiginiz dosyalari vs. buraya kaydetmeniz. Ayni sekilde, belirli bir amacla R kullandiginiz zaman da masaustune deneme1.R gibi isimler yerine duzenli bir sekilde uygun klasorleri icerige dair fikir veren isimlendirmelerle ya da belirli bir sistemle kaydederseniz hayatiniz cok kolaylasacaktir.


Hesap Makinesi olarak R

En temelde hesap makinesi islemleri yapabilirsiniz:

> 2+2
[1] 4
> 2*3
[1] 6
> 10-5
[1] 5
> 3^2
[1] 9
> 450/3
[1] 150
> 200/3
[1] 66.66667
> 200%%3
[1] 2
> 200%/%3
[1] 66

Cok acik olmayan operatorler:

  • %% – belirli bir tabanda kalan islemi, moduler aritmetik. Ornegimizde 200un 3e bolumunden kalan 2
  • %/% – tam sayi bolmesi, kalan olsa bile tam sayi olarak bolme isleminin sonucu kac?

Fonksiyonlar

R kendi icinde fonksiyonlar barindirir. Ornegin, baslangicta kullandigimiz getwd() gibi. Farkettiyseniz, fonksiyonlardan bahsederken hep parantez kullaniyorum. Fonksiyonlari degiskenlerden ayirabileceginiz en basit sekil bu. Cok basit bir kac fonksiyona bakalim:

> log10(100) #10 tabaninda log
[1] 2
> log2(100) #2 tabaninda log
[1] 6.643856
> log(10,4) #4 tabaninda 10un log'u
[1] 1.660964
> exp(1) #e uzeri 1
[1] 2.718282
> exp(2) # e uzeri 2
[1] 7.389056
> log(exp(2)) # e uzeri 2 nin ln i - log taban belirtilmediginde e tabaninda islem yapar
[1] 2
> 16^(1/2) # 16 nin koku
[1] 4
> sqrt(16) # ayni islem fonksiyon ile
[1] 4

R’da degiskenler

Degiskenler, veri tutucular olarak dusunulebilinir. R’da degiskene deger atamak icin = veya <- operatorleri kullanilabilir. Ornegin x’e 3 degerini atamak icin, asagidaki iki kod da gecerlidir.

> x = 3
> x
[1] 3
> a <- 4
> a
[1] 4
> 3 * 4
[1] 12
> x * a
[1] 12

<- tarihsel olarak R camiasinda cokca kullanilsa da, pratik nedenlerle ben genellikle = kullanmayi tercih ediyorum.

Degisken isimleri

R’da degiskenlerinize verebileceginiz isimler icin bazi sinirlayici kurallar vardir. Degiskenler, bir harf ile ya da harfin takip ettigi nokta ile baslar. Ornegin, benimdegiskenim gecerli bir degisken ismi iken 2degisken gecerli degildir, cunku 2 bir harf degildir. .degisken gecerli bir degisken ismidir ancak .2degisken degildir. Ayrica R’da kimi ozel anlam iceren kelimelerin degisken olarak kullanilmasi mumkun degildir, if ve for gibi. Bunlari ?reserved yazarak ogrenebilirsiniz.

Yasak olmasa da diger bir sorun R icinde varolan fonksiyonlarin isimleri ile degisken yaratmak. Cogu zaman sorun olmadan calissa bile, kimi zaman karisikliga sebep olabilir.

R’da degisken isimleri buyuk/kucuk harfe duyarlidir.

Degisken isimlerini tuttugu veriyle alakali secmek genelde kolaylik saglar.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s