Bölüm 3 Veri Türleri
3.1 Veri Türleri
R’da temel olarak altı tür veri vardır. Bunlar: mantıksal değer (logical), sayısal değer (numeric), tam sayı (integer), karmaşık sayı (complex), karakter (character) ve ham veridir (raw).
Mantıksal değerler, aynı zamanda Boolean veri olarak bilinir ve iki değeri vardır: TRUE
(DOĞRU) ve FALSE
(YANLIŞ).
## [1] TRUE
## [1] "logical"
## [1] FALSE
## [1] "logical"
Yukarıdaki örnekten görüldüğü üzere FALSE
yerine kısaltması olan F
harfi de kullanılabilmektedir. Benzer şekilde T
harfi TRUE
yerine kullanılabilirdir.
Sayısal değerler, tüm gerçek (reel) sayılar için kullanılabilir.
## [1] 85
## [1] 70.8
## [1] "numeric"
## [1] "numeric"
Tam sayıları spesifik olarak belirtmek için tam sayı veri türü kullanılır. Ancak bilindiği üzere tam sayılar da gerçek sayıdır. Bu nedenle R’da özellikle tam sayıları ifade etmek için L
harfi kullanılır.
## [1] 68
## [1] "integer"
Karmaşık veriler, karmaşık (kompleks) sayılar içindir. Karmaşık sayıların imajiner z = a + bi şeklinde ifade edilir ve burada a gerçel (reel) kısmı, b ise imajiner (sanal) kısmı ifade eder.
## [1] 5+2i
## [1] "complex"
Karakter verileri, character ya da string tipinde olabilir. Örneğin, ‘m’ harfi bir karakter iken ‘matematik’ bir string ifadedir. İkisi de karakter verisidir. R’da genellikle ’ ’ karakterler için, ” ” ise string veriler için kullanılır.
## [1] "m"
## [1] "matematik"
## [1] "character"
## [1] "character"
Görüldüğü üzere hem karakter
hem de string_ornek
karakter sınıfında yer almaktadır. Kullanılacak '
ya da "
noktalama işaretleri / sembolleri yapıyı değiştirmemektedir. İkisi de birbirinin yerine kullanılabilir.
Ham veriler, değerleri raw byte olarak ifade etmek için kullanılır. Bunun için aşağıdaki iki fonksiyondan yararlanılır.
charToRaw()
- karakter datasını raw dataya çevirir.
rawToChar()
- raw datayı karakter datasına çevirir.
## [1] 4d 65 74 65 68 61 6e 20 47 c3 bc 6e 67 c3 b6 72
## [1] "raw"
## [1] "Metehan Güngör"
## [1] "character"
3.2 Alıştırmalar
Alıştırma 1
İçinde tek bir FALSE
değeri bulunan, adı FF
olan bir nesne oluşturunuz. Nesnenin sınıfının (türünün) logical olup olmadığını class()
fonksiyonu ile kontrol ediniz.
Alıştırma 2
Tek elemanı 75,5 olan nesne
isimli bir nesne oluşturunuz. Nesnenin sınıfının (türünün) numeric olup olmadığını class()
fonksiyonu ile kontrol ediniz.
Alıştırma 3
boy
isimli bir nesne oluşturunuz. Bu nesnenin tek elemanı 180 olsun. Nesnenin sınıfının (türünün) integer olup olmadığını class()
fonksiyonu ile kontrol ediniz.
Alıştırma 4
Gerçel (reel) kısmı 2, imajiner (sanal) kısmı ise 3 olan bir karmaşık sayıyı içeren, ismi komp
olan bir nesne oluşturunuz. Nesnenin sınıfının (türünün) complex olup olmadığını class()
fonksiyonu ile kontrol ediniz.
Alıştırma 5
Tek elemanı “Türkiye” olan, TR
isimli bir nesne oluşturunuz. Nesnenin sınıfının (türünün) character olup olmadığını class()
fonksiyonu ile kontrol ediniz.
Alıştırma 6
“Beyaz” kelimesini charToRaw()
fonksiyonu ile raw data’ya çeviriniz. Bu datayı B
isimli bir nesneye atayınız. Nesnenin sınıfının (türünün) raw olup olmadığını class()
fonksiyonu ile kontrol ediniz. Elde ettiğiniz B
nesnesini rawToChar()
fonksiyonu ile tekrar karakter haline getiriniz. Yeni nesnenin sınıfının (türünün) character olup olmadığını class()
fonksiyonu ile kontrol ediniz.