R'de fonksiyonel programlama

purrr ile Orta Düzey Fonksiyonel Programlama

Colin Fay

Data Scientist & R Hacker at ThinkR

R'de hesaplama hakkında

"R'de hesaplamaları anlamak için iki söz yararlıdır:

- Var olan her şey bir nesnedir.

- Olan her şey bir fonksiyon çağrısıdır."    -John Chambers

class(`+`)
"function"
class(`<-`)
"function"
purrr ile Orta Düzey Fonksiyonel Programlama

Fonksiyonel bir dil olarak R

Fonksiyonlar

  • değiştirilebilir

  • bir değişkende saklanabilir

  • lambda olabilir

 

  • bir listede saklanabilir

  • bir fonksiyonun argümanı olabilir

  • bir fonksiyon tarafından döndürülebilir

purrr ile Orta Düzey Fonksiyonel Programlama

"Saf fonksiyonlar" hakkında

Saf bir fonksiyonda:

  • çıktı yalnızca girdiye bağlıdır

  • "yan etki" yoktur

# Çıktı yalnızca girdilere bağlı
# Yan etki yok
sum(1:10)
55
mean(1:100)
50.5
purrr ile Orta Düzey Fonksiyonel Programlama

Saf olmayan fonksiyonlar yararlıdır

Saf olmayan fonksiyonlar:

  • Ortama bağlıdır

  • "Yan etkilere" sahiptir

# Çıktı ortama bağlıdır 
Sys.Date()
"2018-10-04"
# Yalnızca yan etki
write.csv(iris, "iris.csv")
purrr ile Orta Düzey Fonksiyonel Programlama

Fonksiyonel programlama hakkında daha fazlası

purrr ile Orta Düzey Fonksiyonel Programlama

Hadi pratik yapalım!

purrr ile Orta Düzey Fonksiyonel Programlama

Preparing Video For Download...