Ana içeriğe atla

R’de Yardımcı Araçlar Eğitimi

R programlama dilinde veri yapısı manipülasyonu, iç içe listeler, düzenli ifadeler ve zaman/tarihlerle çalışma için çeşitli kullanışlı fonksiyonları öğrenin.
Güncel 3 Eki 2026  · 14 dk. oku

Yapay Zeka ile Keşfedin

ChatGPTClaudePerplexity

Bu eğitimde, R programlama dilinde sık ve kolayca kullanılan çeşitli fonksiyon ve yardımcı araçları öğreneceksiniz. Önce matematikle ilgili bazı fonksiyonları ele alacağız. Ardından iç içe listeleri manipüle etme, düzenli ifadeler, zaman ve tarihler gibi R’nin veri yapılarıyla daha yakından ilişkili fonksiyonlara bakacaksınız.

Matematiksel Fonksiyonlar

Birkaç matematiksel fonksiyon kullanan aşağıdaki kod hücrelerine bakalım.

Önce hem pozitif hem de negatif değerlerden oluşan x ve y adlı iki vektör tanımlayacaksınız.

x <- c(1.1, -2.3, -4.5)
y <- c(2.4,-44, -2.2)
print(x)
[1]  1.1 -2.3 -4.5
print(y)
[1]   2.4 -44.0  -2.2

Şimdi bu iki x ve y vektörünü alalım:

  • Bunların mutlak değerlerini alın,
  • Onları sıfır ondalığa yuvarlayın,
  • Her birini toplayın ve
  • Son olarak ikisinin ortalamasını alın.
mean(c(sum(round(abs(x))),sum(round(abs(y)))))
27.5

Yukarıdaki kod satırını küçük parçalara ayırıp her bir fonksiyona yakından bakmaya ne dersiniz.

  • abs() fonksiyonu, x ve y vektörlerinin elemanlarının pozitif ya da mutlak değerlerini alır.

Örneğin, x ve y üzerine abs() fonksiyonunu uyguladığınızda aşağıda gösterildiği gibi tüm değerlerin pozitif olmasını beklersiniz.

abs(x)
  1. 1.1
  2. 2.3
  3. 4.5
abs(y)
  1. 2.4
  2. 44
  3. 2.2
  • Listedeki bir sonraki fonksiyon round() fonksiyonudur. Girdiyi yuvarlamaktan başka bir şey yapmaz. Kaç ondalık basamağa yuvarlamak istediğinizi belirleyebileceğiniz ek bir argüman alır. Genel kullanımda, round() girişi sıfır ondalık basamağa yuvarlar.

Örneğin, round() fonksiyonunu x ve y vektörlerine uyguladıktan sonra çıktı aşağıdaki gibi olacaktır:

round(x)
  1. 1
  2. -2
  3. -4
round(y)
  1. 2
  2. -44
  3. -2
  • sum() fonksiyonu ise bir vektörün ya da matrisin elemanlarının toplamını hesaplar. Örneğin, toplama fonksiyonuna bir satır vektörü geçirirseniz, bu satır vektörünün tüm elemanlarının toplamı skaler olarak döner.

Bu durumda x ve y vektörleri sum() fonksiyonuna geçirilir. Dolayısıyla R vektör elemanlarının toplamını hesaplar ve çıktı olarak skaler döndürür.

sum(abs(round(x)))
7
sum(abs(round(y)))
 48
  • Son olarak, mean() ya da average() fonksiyonu aritmetik ortalamayı hesaplar. Bir sayı kümesinin ortalamasını almak için bunları toplar ve kümedeki terim sayısına böler.

Bu durumda, mean() fonksiyonunun girdisi 7 ve 48 sayılarından oluşan, uzunluğu iki olan bir satır vektörüdür. Dolayısıyla bu iki değerin ortalaması, değerlerin toplamının eleman sayısına, yani 2’ye bölünmesiyle bulunur.

mean(c(7,48))
27.5

Bu hâlâ oldukça kolaydı. Öyle değil mi?

Şimdi bu eğitimin bir sonraki ve en ilginç bölümüne geçelim!

Veri Yapıları için Fonksiyonlar

Şimdi liste ve vektör gibi bazı veri yapılarına bakalım. list veri yapısı üzerinde çalışmanın farklı yolları, bir list’i tersine çevirme ve bir listeyi vektöre ve tersini dönüştürme.

Aşağıdaki fonksiyon bir list()’tir; hatta bir list of lists, yani iç içe liste de diyebilirsiniz. Mantıksal değerler, sayısal değerler ve dizelerden oluşabilen bir öğe listesi oluşturur.

Aşağıdaki örnekte, log, ch ve int_vec adlı üç liste bir listenin içindedir. Her birinin veri türü ya da R nesnesi sırasıyla mantıksal, sayısal ve karakter/dizedir.

list_define <- list(log = TRUE, ch = "hello_datacamp", int_vec = sort(rep(seq(8,2, by = -2), times = 2)))
list_define
$log
TRUE
$ch
'hello_datacamp'
$int_vec
  1. 2
  2. 2
  3. 4
  4. 4
  5. 6
  6. 6
  7. 8
  8. 8
  • log basitçe bir mantıksal operatördür, TRUE veya FALSE
  • ch bir karakter dizisidir: hello_datacamp
  • int_vec sayısal değerlerden oluşan bir dizidir.

log ve ch oldukça açık olduğundan, int_vec’e yakından bakalım.

int_vec = sort(rep(seq(8,2, by = -2), times = 2))
int_vec
  1. 2
  2. 2
  3. 4
  4. 4
  5. 6
  6. 6
  7. 8
  8. 8

Yukarıdaki ifadeyi adım adım anlayalım.

seq fonksiyonu 8’den 2’ye kadar (azalan) bir sayı dizisi üretir.

seq() fonksiyonunun söz dizimi şöyledir: seq(x1,x2, by = y)

İlk iki argüman x1 ve x2 R’ye dizinin aralığını, yani dizinin nereden başlayıp nerede biteceğini söyler. by argümanı her aralıkta dizinin artış ya da azalış miktarını belirtir.

Örneğin, aşağıdaki kod satırı 100’den 200’e kadar 20’şer artan bir dizi oluşturur.

seq(100,200, by = 20)
  1. 100
  2. 120
  3. 140
  4. 160
  5. 180
  6. 200

bizim örneğimizde sequence fonksiyonu 8’den 2’ye kadar (dahil) 2’şer azalan bir dizi üretir ve uzunluğu 4 olan bir vektör döndürür.

a = seq(8,2, by = -2)
a
  1. 8
  2. 6
  3. 4
  4. 2

Şimdi de rep fonksiyonunu anlayalım.

Genellikle bir vektör ya da liste olan girdi argümanını times fonksiyonunu kullanarak (bir tamsayı alır) belirtilen sayıda tekrar edebilir. rep fonksiyonu iki argüman alır: girdi ve girdinin kaç kez tekrar edilmesini istediğiniz.

Bizim örneğimizde uzunluğu 4 olan bir vektöre rep uygulamak uzunluğu 8 olan bir çıktı vektörü verir.

b = rep(a, times = 2)

Vektörün ya da listenin tümü yerine her bir elemanın tekrarlanmasını isterseniz, times’a alternatif olarak each argümanını kullanabilirsiniz.

times ve each kullanımı arasındaki belirgin fark, her bir elemanın oluşum deseninin aynı olmamasıdır.

rep(a, each = 2)
  1. 8
  2. 8
  3. 6
  4. 6
  5. 4
  6. 4
  7. 2
  8. 2

Geldik sort() fonksiyonuna. Bu, vektör ya da liste gibi birçok veri yapısını sıralamak için kullanılan, kendini açıklayan genel bir fonksiyondur. Yalnızca sayısal değerlerle sınırlı değildir; mantıksal değerler ve karakterler üzerinde de kullanılabilir. Varsayılan olarak elemanları artan düzende sıralar.

Son çıktıya ulaşmak için rep fonksiyonunun çıktısını sort fonksiyonuna verelim.

sort(b)
  1. 2
  2. 2
  3. 4
  4. 4
  5. 6
  6. 6
  7. 8
  8. 8

Harika! Böylece, list_define listesi içinde yer alan uzun int_vec ifadesini bu kadar kolay bir şekilde çözmeyi başardınız.

Şimdi, list_define listesinin içeriğini str() fonksiyonunu kullanarak bulalım. R’de str() fonksiyonu, R nesnelerinin yapısını görüntülemenizi sağlar.

str(list_define)
List of 3
 $ log    : logi TRUE
 $ ch     : chr "hello_datacamp"
 $ int_vec: num [1:8] 2 2 4 4 6 6 8 8

Bazı güzel R ifadelerine bakalım:

  • is fonksiyonu, veri yapınızın türünü kontrol etmek için kullanılabilir; mantıksal değer döndürür ve koşullu ifadelerle çalışırken işe yarar.
is.list(list_define) #argüman liste ise true döner.
TRUE

Öte yandan, aşağıdaki hücrede gösterildiği gibi, bir liste olmayan bir vektör geçilirse FALSE döner.

is.list(c(1,2,3)) #vektör geçtiğiniz için false döner.
FALSE
  • Bir vektörü listeye dönüştürmek R’de çok basittir. Yapmanız gereken tek şey as fonksiyonunu .list() ile birlikte kullanmak ve vektörü argüman olarak geçmektir. Bir vektörü listeye dönüştürmek için gereken budur.
vec_to_list <- as.list(c(1,2,3))
is.list(vec_to_list) #is.list() ile doğrulayın
TRUE
  • Öte yandan, bir liste unlist fonksiyonu kullanılarak bir vektöre açılabilir. R bu dönüşümü, tüm liste yapısını düzleştirip tek bir vektör çıktısı vererek yapar.
list_to_vec <- unlist(vec_to_list)
list_to_vec
  1. 1
  2. 2
  3. 3

is.list()’e benzer şekilde, verilen argümanın bir vektör olup olmadığını bulmak için is.vector() kullanabilirsiniz.

is.vector(list_to_vec)
TRUE

Büyük list_define listesini bir vektöre dönüştürelim. Burada dikkat edilmesi gereken nokta, bir vektörün yalnızca tek bir veri türü veya R nesnesi içerebilmesidir. Bu nedenle, hem mantıksal hem de sayısal değerler dizelere dönüştürülecektir.

unlist(list_define)
log
'TRUE'
ch
'hello_datacamp'
int_vec1
'2'
int_vec2
'2'
int_vec3
'4'
int_vec4
'4'
int_vec5
'6'
int_vec6
'6'
int_vec7
'8'
int_vec8
'8'

Bir sonraki konuya geçmeden önce append() ve rev() fonksiyonlarına bakalım.

  • İsminden de anlaşılacağı gibi, append() fonksiyonu mevcut ya da yeni bir vektöre veya listeye iki ya da daha fazla vektör veya listeyi eklemenizi sağlar.

append() fonksiyonunu list_define listesi üzerinde deneyelim. Listeyi kendisiyle birleştirdiğiniz için artık 3 yerine 6 öğeden oluştuğunu fark edeceksiniz.

str(append(list_define, list_define))
List of 6
 $ log    : logi TRUE
 $ ch     : chr "hello_datacamp"
 $ int_vec: num [1:8] 2 2 4 4 6 6 8 8
 $ log    : logi TRUE
 $ ch     : chr "hello_datacamp"
 $ int_vec: num [1:8] 2 2 4 4 6 6 8 8
  • Son olarak R’de rev() fonksiyonunun yardımıyla list_define listesini tersine çevirelim veya sırasını değiştirelim.
str(rev(list_define))
List of 3
 $ int_vec: num [1:8] 2 2 4 4 6 6 8 8
 $ ch     : chr "hello_datacamp"
 $ log    : logi TRUE

Düzenli İfadeler

Birçok kişi düzenli ifadeleri öğrenmesi zor bir konu olarak görür. Ancak bu konu yalnızca R’de değil, Python gibi çeşitli dillerde de esastır. R dahil birçok programlama dili yerleşik düzenli ifade yetenekleri sağlar.

Düzenli ifadeler pek çok uygulamada kullanılabilir ve özellikle metin verilerini ön işlemek istediğinizde çok işe yarar. Çeşitli Doğal Dil İşleme (NLP) problemlerinde kullanılır.

Sorgu arama motorlarında ve metin düzenleyicilerde de kullanılır.

regex ya da regexp veya rational operators olarak da bilinen düzenli ifadeler, bir arama desenini tanımlayan karakter dizileridir. Genellikle bu arama desenleri; bir deseni bulmak, bulup değiştirmek veya eşleşen bir deseni filtrelemek için çeşitli dize arama algoritmaları tarafından kullanılır.

Bu konuya grep() ve grepl() fonksiyonlarının kullanımını anlayarak başlayalım.

Sadelik için, regex desenlerini uygulamayı öğreneceğiniz, uzunluğu 5 olan bir satır vektörü animals_regex tanımlayalım.

animals_regex <- c('cat','dog','cheetah','lion','mice')

Önce grepl() fonksiyonunu anlayalım. grepl() fonksiyonu mantıksal çıktı döndürür; yani dize desenle eşleşirse TRUE, yoksa FALSE döner.

Aşağıda grepl() fonksiyonunun basit ve sezgisel söz dizimi yer almaktadır; ilk argüman eşleştirmek istediğiniz desen, ikinci argüman ise deseni bulmak ya da filtrelemek istediğiniz dize ya da girdidir. Geri kalan argümanları şimdilik görmezden gelebilirsiniz. grepl(pattern, x, ignore.case = FALSE, perl = FALSE, fixed = FALSE, useBytes = FALSE) Yukarıdaki beş hayvandan hangilerinde c harfi olduğunu grepl() fonksiyonunun yardımıyla bulalım.

Bu durumda, içinde c olan hayvanları arıyorsunuz; bu da doğrudan desenin c olduğu anlamına gelir.

grepl(pattern = 'c', x = animals_regex)
  1. TRUE
  2. FALSE
  3. TRUE
  4. FALSE
  5. TRUE

Yukarıdaki çıktıda, cat, cheetah ve mice sözcüklerinde c olduğu için animals_regex vektöründe bu indeksler için TRUE döndürüldüğünü; desen c ile eşleşmeyenler içinse FALSE döndürüldüğünü gözlemleyebilirsiniz.

Sadece adında c geçenleri değil, c ile başlayan öğeleri bulalım.

Bunu başarmak için, bulmak istediğiniz desenin başına şapka işareti $^$ (caret) koymanız yeterlidir.

grepl(pattern = '^c', x = animals_regex) #yalnızca cat ve cheetah `c` ile başlar.
  1. TRUE
  2. FALSE
  3. TRUE
  4. FALSE
  5. FALSE

Dolayısıyla yalnızca cat ve cheetah c ile başladığından, sadece bu konumlar TRUE olarak döner.

$^$ işaretine benzer şekilde, $ işareti deseni sonlandırmak istediğiniz yerde kullanılabilir; böylece belirtilen desenle biten öğeler eşleşir. n ile biten bir hayvanı bulmak için, n’in ardından $ işareti kullanabilirsiniz.

grepl(pattern = 'n$', x = animals_regex) #yalnızca lion `n` ile biter.
  1. FALSE
  2. FALSE
  3. FALSE
  4. TRUE
  5. FALSE

Not: Düzenli ifadeler hakkında daha fazla bilgi edinmek için jupyter notebook kod hücresine ?regex yazın; regex dokümantasyonu açılacaktır. Ayrıca, düzenli ifadeler hakkında daha fazlasını öğrenmek isterseniz, arama desenlerinizi tasarlamanıza ve girdileriniz üzerinde test etmenize olanak sağlayan bu kaynağa göz atabilirsiniz.

  • grepl() fonksiyonuna benzer şekilde, grep() fonksiyonu da vardır; ancak mantıksal çıktı yerine, verilen desenle eşleşen vektör/matrisin indekslerini döndürür.

grep() fonksiyonunun söz dizimi grepl() ile aynıdır ve şöyledir: grep(pattern, x, ignore.case = FALSE, perl = FALSE, value = FALSE, fixed = FALSE, useBytes = FALSE, invert = FALSE) Yukarıdaki aynı örneği alalım ama bu kez üzerine grep() uygulayalım!

grep(pattern = 'c', x = animals_regex)
  1. 1
  2. 3
  3. 5

Bekleyeceğiniz üzere, yukarıdaki çıktı cat, cheetah ve mice öğelerinin indekslerini döndürür; TRUE/FALSE değil. Temelde bu kadar!

grep() ve grepl() fonksiyonlarını karşılaştırmak için which fonksiyonunu kullanalım. which() fonksiyonu, mantıksal bir nesnedeki TRUE konumlarının vektör indekslerini döndürür.

Şimdi parçaları birleştirirseniz, grepl() fonksiyonunun mantıksal bir nesne döndürme yeteneği olduğundan, bunun which() fonksiyonuna doğrudan geçirilebileceğini ve çıktının grep() fonksiyonundan bekleyeceğiniz forma dönüştürüleceğini anlarsınız.

which(grepl(pattern = 'c', x = animals_regex))
  1. 1
  2. 3
  3. 5

grepl() fonksiyonunda olduğu gibi, grep() fonksiyonu da farklı türde düzenli ifade desenlerini nasıl işleyeceğini bilir.

Eğer grep() fonksiyonunu, animals_regex vektöründe n ile biten öğeleri bulmak için uygularsanız, yalnızca lion n ile bittiği için çıktının aşağıda gösterildiği gibi 4 olmasını beklersiniz.

grep(pattern = 'n$', x = animals_regex)
4

Aferin!

Bir vektörden verilen desenle eşleşen öğeleri nasıl filtreleyebileceğiniz gibi düzenli ifadelerin bazı temellerini öğrendiniz. Ancak R yalnızca desen eşleştirmeyle sınırlı değildir. Bir dizi fonksiyona sahiptir ve bunlardan biri de sub() fonksiyonudur.

sub() fonksiyonu, eşleşen deseni filtrelemek yerine eşleşmeleri başka dizelerle değiştirir. Bunu biraz daha derinlemesine anlayalım!

  • sub() fonksiyonu temel olarak üç girdi argümanı alır:
    • Eşleştirmek istediğiniz pattern ya da düzenli ifade,
    • Vektörde eşleşen öğe konumuna yerleştirilecek replacement değeri ve
    • Regex uygulayacağınız girdi dize vektörü x.

Söz dizimi şöyledir: sub(pattern, replacement, x, ignore.case = FALSE, perl = FALSE,fixed = FALSE, useBytes = FALSE) Bu sefer de işlevselliğini anlamak için yukarıdaki aynı örneği ele alalım!

sub(pattern = 'c', replacement = 'a', x = animals_regex)
  1. 'aat'
  2. 'dog'
  3. 'aheetah'
  4. 'lion'
  5. 'miae'

Yukarıdaki çıktıdan, cat dizgesinin aat ile, cheetah’ın aheetah ile ve mice’ın miae ile değiştirildiğini görebilirsiniz. Bu öğelerde desen başarıyla eşleşti.

Ayrıca, sub()’ın dizgede yalnızca ilk eşleşmeyi aradığını unutmayın; yani bir dizgede iki c varsa, yalnızca ilk c oluşumu a ile değiştirilecek, ikincisi değişmeden kalacaktır.

Eğer bir dize vektöründe bir deseni daha iyi şekilde tüm eşleşmeleriyle birlikte değiştirmek istiyorsanız, bu eğitimin kapsamı dışında kalan gsub() fonksiyonunu kullanın!

Bir sonraki konuya geçmeden önce bir ilginç ifadeyi daha deneyelim.

Bu kez, tanımlanan desenlerden herhangi biriyle eşleşmeyi deneyen | (veya) operatörünü kullanacak ve eşleşirse bunu - ile değiştireceksiniz. Unutmayın, gsub() fonksiyonunu kullandığınız için bir dizgedeki bir desenin her eşleşmesi değiştirilecektir.

gsub(pattern = 'c|d|l', replacement = '-', x = animals_regex) #`c`,`d`,`l` içeren hayvanlar `-` ile değiştirilir.
  1. '-at'
  2. '-og'
  3. '-heetah'
  4. '-ion'
  5. 'mi-e'

Şimdi bugünün eğitiminin son konusu olan Zaman ve Tarihler’e geçelim!

Zaman ve Tarihler

Zaman ve tarih bilgisi çeşitli senaryolarda oldukça faydalı olabilir. Örneğin, Bilgisayarlı Görü (Computer Vision) ile ilgili bir problem üzerinde çalıştığınızı ve algoritmanızın kaç FPS (saniyedeki kare) hızında çalıştığını bulmak istediğinizi varsayalım. Böyle bir kullanımda, bilgisayarlı görü algoritmanızın işleme hızını bulmak için Zaman nesnesini kullanabilirsiniz. Zaman serisi tahmini ve mevsimsellik çalışmaları gibi diğer spesifik problemler için R’nin potansiyeli tam anlamıyla kullanılabilir.

Başlangıç olarak, R’de bugünün tarihini Sys.Date() komutuyla hızlıca yazdıralım. Burada Sys sistem anlamına gelir; yani sistemin tarih yaklaşımını döndürür.

Sys.Date()

Basit, değil mi?

R’nin zaman ve tarihleri bir Date nesnesine aittir; ya da veri tipinin Date olduğunu söyleyebilirsiniz. Bunu, R’de Veri Türleri eğitiminde öğrendiğiniz class fonksiyonunu kullanarak doğrulayabilirsiniz.

Date fonksiyonuna benzer şekilde, sistemin geçerli saatini döndüren, hatta çıktı olarak hem saat hem tarihi veren bir time() fonksiyonunuz vardır.

Sys.time()
[1] "2020-02-04 02:05:04 IST"

Tarih Nesneleri Oluşturma

Geçerli tarih ve saati almayı öğrendiniz. Şimdi de yalnızca bir dizeyi argüman olarak geçirerek diğer günler için nasıl tarih oluşturabileceğinizi bulalım.

10 Mayıs 1993 için bir tarih nesnesi oluşturmak üzere aşağıdaki söz dizimini kullanacaksınız:

date_may <- as.Date('1993-05-10') #karakter dizisini tarih nesnesine dönüştürür
date_may

class(date_may)
'Date'

Burada dikkat edilmesi gereken önemli bir nokta, R’deki Date fonksiyonunun varsayılan olarak tarihi YYYY-MM-DD biçiminde girmenizi beklemesidir; yılı ay veya günle yer değiştirirseniz hata oluşacaktır. Hadi deneyelim!

date_may <- as.Date('05-1993-10') #R varsayılan olarak ISO tarih biçimini takip eder
Error in charToDate(x): character string is not in a standard unambiguous format
Traceback:


1. as.Date("05-1993-10")

2. as.Date.character("05-1993-10")

3. charToDate(x)

4. stop("character string is not in a standard unambiguous format")

Ancak güzel olan şu ki, format argümanını geçirerek biçimi açıkça değiştirebilir ve buna göre özelleştirebilirsiniz.

date_may <- as.Date('05-1993-10', format = '%m-%Y-%d')

as.Date() fonksiyonu farklı tarih biçimlerini kabul eder, ancak sonunda tekrar ISO tarih biçimine dönüştürür; bunu date_may değişkenini yazdırarak görebilirsiniz.

date_may

date_may <- as.Date('05-10-1993', format = '%m-%d-%Y')
date_may

Tarih Aritmetiği

R’de Tarih nesnelerine toplama ve çıkarma gibi matematiksel işlemler uygulayabilmek harika olmaz mıydı?

date_may değişkenine 1 ekleyelim; bir gün sonraki tarihi göstereceğini göreceksiniz.

date_may + 1

Harika; yukarıdaki çıktıda görüldüğü gibi, bir eklemek tarihi 10 Mayıs 1993’ten 11 Mayıs 1993’e çevirdi. Benzer şekilde tarihten bir çıkarabilirsiniz.

Diyelim ki sizinki ile ablanızın/ağabeyinizin doğum tarihi arasındaki zaman farkını bulmak istiyorsunuz.

elder_sib <- as.Date('1989-03-21')
date_may - elder_sib
Time difference of 1511 days

Sonuç

Eğitimi tamamladığınız için tebrikler.

Bu eğitim, R’deki çeşitli yardımcı fonksiyonları öğrenmeye hevesli yeni başlayanlar için iyi bir başlangıçtı. Güzel bir alıştırma olarak, düzenli ifadeler hakkında daha fazla şey öğrenmek isteyebilirsiniz; çünkü çok çeşitli uygulamalarda kullanılırlar ve metin verilerini temizleme ya da ön işlemeye geldiğinde gerçekten güçlü bir araçtırlar.

Lütfen bu eğitimle ilgili tüm sorularınızı aşağıdaki yorumlar bölümünde sormaktan çekinmeyin.

R hakkında daha fazla bilgi edinmek isterseniz, DataCamp’in Intermediate R kursunu alın ve R’de Fonksiyon Kullanımı eğitimimize göz atın.

Konular
R
Veri Bilimi

R hakkında daha fazla bilgi edinin

Kurs

Introduction to Writing Functions in R

4 sa
53.9K
Take your R skills up a notch by learning to write efficient, reusable functions.
Ayrıntıları GörüntüleRight Arrow
Kursa Başla
Devamını GörRight Arrow
İlgili

blog

Hızlı Sevkiyat İçin Pratik Vibe Kodlama Teknoloji Yığını

Ön uç, arka uç, veritabanları, kimlik doğrulama, depolama, e-posta, test, dağıtım ve izleme için en iyi araçları keşfedin.
Abid Ali Awan's photo

Abid Ali Awan

14 dk.

blog

2026’da En Popüler 40 Yazılım Mühendisi Mülakat Sorusu

Algoritmalar, sistem tasarımı ve davranışsal senaryoları kapsayan bu temel sorularla teknik mülakat sürecine hakim olun. Uzman cevapları, kod örnekleri ve kanıtlanmış hazırlık stratejileri edinin.
Dario Radečić's photo

Dario Radečić

15 dk.

Eğitim

Python'da Listeyi String'e Nasıl Dönüştürürsünüz

Bu hızlı eğitimde, Python'da bir listeyi string'e nasıl dönüştüreceğinizi öğrenin.
Adel Nehme's photo

Adel Nehme

Eğitim

.gitignore Nasıl Kullanılır: Örneklerle Pratik Bir Giriş

Git deponuzu temiz tutmak için .gitignore’u nasıl kullanacağınızı öğrenin. Bu eğitim; temelleri, yaygın kullanım durumlarını ve başlamanıza yardımcı olacak pratik örnekleri kapsar!
Kurtis Pykes 's photo

Kurtis Pykes

8 dk.

Devamını GörDevamını Gör