İstenen belirli bir harfi içeren nesne isimlerini çağıran bir fonksiyon yazmak için ls(pat= ) kullanılabilir. Ancak nesne isimlerinin verilen bu belirli harfle başlaması istenirse ^sembolü ile birleştirilmesi gerekecektir. Bu işlem paste() fonksiyonu yardımı ile yapılabilir.
Dikkat edilmesi gereken bir nokta ise R ortamında oluşturulan her fonksiyonun kendi iç ‘ortamını’ yaratmasıdır. Fonksiyonun yalnızca kendi çalışma alanında değil genel çalışma alanında tarama yapabilmesi için envir=.GlobalEnv argümanının kullanılması gerekir.
belirli <- c(1)
bir <- c(2)
harfle <- c(3)
baslayan <- c(4)
nesne <- c(5)
isimlerini <- c(6)
bulan <- c(7)
fonksiyon <- c(8)
basla <- function(harf="a") {
ls(pattern = paste("^", harf,sep=""), envir=.GlobalEnv)
}
basla (harf="b")
## [1] "basla" "baslayan" "belirli" "bir" "bulan"
letters kullanılarak oluşturulmasıalfabe <- letters
alfabe <- append(alfabe,"ç", 3)
alfabe <- append(alfabe,"ğ", 8)
alfabe <- append(alfabe,"ı", 10)
alfabe <- append(alfabe,"ö", 18)
alfabe <- append(alfabe,"ş", 23)
alfabe <- append(alfabe,"ü", 26)
(alfabe <- alfabe[-c(21, 29, 30)])
## [1] "a" "b" "c" "ç" "d" "e" "f" "g" "ğ" "h" "ı" "i" "j" "k" "l" "m" "n" "o" "ö"
## [20] "p" "r" "s" "ş" "t" "u" "ü" "v" "y" "z"
ad_soyad <- c("Ayse-Sel", "Can-Yucel", "Cem-Togay", "Banu-Cift")
(ad_soyad <- strsplit(ad_soyad, split = "-"))
## [[1]]
## [1] "Ayse" "Sel"
##
## [[2]]
## [1] "Can" "Yucel"
##
## [[3]]
## [1] "Cem" "Togay"
##
## [[4]]
## [1] "Banu" "Cift"
sapply(ad_soyad, `[[`, 1)
## [1] "Ayse" "Can" "Cem" "Banu"
sapply(ad_soyad, `[[`, 2)
## [1] "Sel" "Yucel" "Togay" "Cift"
toplam_kac <- function()
{
n <- as.numeric(readline(prompt = "Kaca kadar olan sayıların toplamı hesaplansın? : "))
t <- (n * (n + 1)) / 2
return(cat( n,"'a kadar olan sayıların toplamı:",t, sep = "" ))
}
kare_toplam <- function(n)
{
(n * (n + 1) * (2*n + 1)) / 6
}
kare_toplam(5)
## [1] 55
#Alternatif
kare_toplam_1 <- function(n)
{
kare <- ((1:n) ^ 2)
toplam <- sum(kare)
return(toplam)
}
#Kullanıcının girdiği sayıya kadar olan sayıların kareleri toplamını hesaplama
kare_toplam_kac <- function()
{
a <- readline(prompt = "Kaca kadar olan sayıların kareler toplamı hesaplansın? : ")
n <- as.numeric(a)
t <- (n * (n + 1) * (2*n + 1)) / 6
return(cat( n,"'a kadar olan sayıların kareler toplamı:",t, sep = "" ))
}
toplam_kac <- function()
{
n <- as.numeric(readline(prompt = "Kaca kadar olan sayıların toplamı hesaplansın? : "))
t <- (n * (n + 1)) / 2
return(cat( n,"'a kadar olan sayıların toplamı:",t, sep = "" ))
}
Geçtiğimiz hafta ödevi yaparken R’da neler öğrenmek istediğimi düşündüğümde maalesef aklımda belirli bir hedef canlanmadı. Sanırım bu R’ı bir öğrenme hedefi belirleyebilecek kadar tanımadığımın bir işaretiydi. Ancak bunun üzerine biraz düşününce bu duruma şöyle bir açıdan da bakabileceğimi fark ettim.
İlk Öğrenme Hedefim: R’ı bir öğrenme hedef belirleyebilecek kadar tanımayı başarmak :)