Ana içeriğe atla

R'de Veri Kümelerini Birleştirme

Bu eğitimde, R'de birden fazla veri kümesini birleştirmeyi öğreneceksiniz.
Güncel 3 Eki 2026  · 8 dk. oku

Yapay Zeka ile Keşfedin

ChatGPTClaudePerplexity

Uygulamada veriler farklı sunucularda barındırılır ve birçok farklı dosyada bulunur. İhtiyacınız olan veriler birden fazla kaynaktan geldiğinde, mümkün olduğunca az bilgi kaybedecek ve verinizin yapısı göz önüne alındığında gerçekten anlamlı eşleştirmeler yapacak şekilde bunları nasıl bir araya getireceğinizi bilmek çok önemlidir.

Bu eğitimde şunları adım adım göreceksiniz:

  • Veri kümelerini yatay ve dikey olarak birleştirme
  • Birincil anahtarların ne olduğu ve verilerinize nasıl yapı kazandırdığı
  • Farklı join türleri (ör. left-join, inner-join, full-join) ve aralarından nasıl seçim yapılacağı
  • Dikkat edilmesi gereken yaygın bir sorun ve bunun nasıl çözüleceği

Veri Kümelerini Birleştirme (Concatenate)

Genel düzeyde, veri kümelerini birleştirmenin iki yolu vardır; veri kümenize daha fazla satır ekleyerek ya da daha fazla sütun ekleyerek bilgi katabilirsiniz. Genel olarak, aynı sütun setine sahip veri kümeleriniz veya aynı gözlem setine sahip veri kümeleriniz olduğunda, bunları sırasıyla dikey veya yatay olarak birleştirebilirsiniz. Örneklerle öğrenelim.

Veri kümelerini dikey olarak ekleme

Aynı sütun setine sahip birden fazla veri kümeniz olduğunda, bir veri kümesini diğerine dikey olarak ekleyebilirsiniz. Yani, veri kümenizin sütunlarını koruyarak ona daha fazla satır ekleyebilirsiniz. Bu tür bilgilerin tek bir dosyada bulunması, birden fazla dosya arasında gidip gelme zahmeti ve takibi kaybetme riski olmadan bilgileri bir araya getirmenizi ve büyük resmi görmenizi kolaylaştırır.

Veri kümesi 1

Marka Model sayısı
Honda 63
BMW 10

Veri kümesi 2

Marka Model sayısı
Ford 26
Tesla 4

Şuna dikkat etmek önemlidir: Birden fazla veri kümesinde aynı gözlem varsa ve bunları rbind() kullanarak dikey olarak birleştirirseniz, tablonuzda yinelenen gözlemlerle karşılaşırsınız. Ayrıca iki veri kümesi aynı değişken setine (yani sütunlara) sahip olmak zorunda olsa da, aynı sırada olmak zorunda değildir. Aşağıdaki konsolda kendiniz görün!

Çalışma alanınızda yukarıda gördüğünüz dataset1 ve dataset2 adlı iki veri kümesi bulunmaktadır. dataset1’in sütunlarının sırasını değiştirmeyi deneyin. dataset1 ve dataset2’nin yanı sıra reordered_dataset1 ve dataset2 üzerinde rbind() çağrısı yapın.

dataset1 <- data.frame(make = c("Honda", "BMW"), num_models = c(63, 10)) dataset2 <- data.frame(make = c("Ford", "Tesla"), num_models = c(26, 4)) # Add datasets vertically rbind(dataset1, dataset2) # Reorder columns reordered_dataset1 <- dataset1[, c(2, 1)] # See that rbind() is robust to column ordering rbind(reordered_dataset1, dataset2)

rbind() sonrasında, sonuçlar tek bir tabloda dört otomobil markasının tüm bilgilerini aşağıdaki gibi içermelidir:

Dikey olarak birleştirilmiş veri kümesi

Marka Model sayısı
Honda 63
BMW 10
Ford 26
Tesla 4

R Öğrenmeye Ücretsiz Başlayın

R’ye Giriş

BasicSkill Level
4 sa
3.1M learners
Vektörler, listeler ve veri çerçeveleri de dahil olmak üzere R'da veri analizinin temellerini öğrenin ve gerçek veri setleriyle R pratiği yapın.
See DetailsRight Arrow
Start Course

Veri kümelerini yatay olarak ekleme

Aynı gözlem setini temsil eden veri kümeleriniz olduğunda, bu veri kümelerini yatay olarak birleştirebilirsiniz. Bu kez, veri kümenizin satırlarını koruyarak ona daha fazla sütun ekleyebilirsiniz. Bu tür durumlarda, gözlemlerin sırasının aynı olup olmadığını kontrol etmelisiniz. Veri kümelerinizin satır sayıları farklıysa ya da satır sayıları aynı olsa bile sıraları tutarsızsa, bir sütun setini diğer setle mantıksız bir şekilde eşleştirebilirsiniz.

Yukarıdaki örneği biraz genişletelim. Diyelim ki iki veri dosyanız var; biri otomobil markasını ve sunulan benzersiz model sayısını, diğeri ise otomobil markasını ve toplam satışları içeriyor:

Sunulan benzersiz model sayısı

Marka Model sayısı
Honda 63
BMW 10
Ford 26
Tesla 4

Toplam satış

Marka Satış
Ford 119157
BMW 25908
Honda 188328
Tesla 29975

Şuna dikkat etmek önemlidir: Birden fazla veri kümesinde aynı gözlem varsa ve bunları cbind() kullanarak yatay olarak birleştirirseniz, tablonuzda gereksiz (mükerrer) sütunlar oluşur. Ayrıca iki veri kümesi ilişkili bilgiler içerse de, satırların sırası önemlidir!

Aşağıdaki konsolda, models ve sales üzerinde cbind() çağrısı yapın ve sonucu yazdırın:

models <- data.frame(make = c("Honda", "BMW", "Ford", "Tesla"), num_models = c(63, 10, 26, 4)) sales <- data.frame(make = c("Ford", "BMW", "Honda", "Tesla"), sales = c(119157, 25908, 188328, 29975)) # Add datasets horizontally cbind(models, sales)

Şuna benzer bir çıktı almış olmalısınız:

Modeller & Satışlar

Marka Model sayısı Marka Satış
Honda 63 Ford 119157
BMW 10 BMW 25908
Ford 26 Honda 188328
Tesla 4 Tesla 29975

Buradaki sorunu görüyor musunuz? Bu veriler düzenli (tidy) değil!

bu temel kursta öğretilen düzenli veri ilkelerine göre, bir veri kümesindeki her gözlem benzersiz bir satırda temsil edilmelidir. Peki ya bir veri kümesinde yalnızca bazı satırlara ilişkin bilginiz varsa ve yalnızca onlar için bilgi eklemek istiyorsanız? Başka bir deyişle, bir veri kümesinden diğerine daha fazla sütun eklemek istiyorsunuz ama bu veri kümelerinin gözlem sayıları aynı değilse ne olur?

Birincil Anahtar ve Yabancı Anahtarlar

Veri kümelerini birleştirmeye çalışırken ilk adım, veri kümenizin birincil anahtarını aramaktır. Birincil anahtar, veri kümenizdeki her gözlemi benzersiz olarak tanımlayan sütun veya sütunlar grubudur. Otomobil markaları, sunulan benzersiz model sayısı ve toplam satışlar örneğinde, veri kümelerinizin birincil anahtarı make sütunudur.

Artık veri kümelerini tek bir tabloda birleştirmenin standart yolu olan join işlemlerini gerçekleştirebiliriz.

Join Türleri

Birçok join türü vardır. Bir veri kümesindeki sütunları diğerinden gelen sütunlarla nasıl zenginleştireceğinizi mutating join'lerle, bir veri kümesini diğerine göre nasıl filtreleyeceğinizi filtering join'lerle ve veri kümeleri üzerinde nasıl küme işlemleri yapacağınızı dplyr ile R'de Verileri Birleştirme kursunda öğrenebilirsiniz. Aşağıda en yaygın olanlardan bazıları yer alıyor.

left_join(x, y): x’teki tüm satırları ve x ile y’nin tüm sütunlarını döndürür. y’de eşi olmayan x satırları, yeni sütunlarda NA değerleri alır. x ile y arasında birden fazla eşleşme varsa, eşleşmelerin tüm kombinasyonları döndürülür.

inner_join(x, y): y’de eşleşen değerlerin bulunduğu x’teki tüm satırları ve x ile y’nin tüm sütunlarını döndürür. x ile y arasında birden fazla eşleşme varsa, eşleşmelerin tüm kombinasyonları döndürülür.

full_join(x, y): Hem x hem de y’den tüm satırları ve tüm sütunları döndürür. Eşleşen değerlerin olmadığı yerlerde, eksik olan için NA döndürülür.

Yukarıda bahsedilen join'ler, iki veri kümesinden değişkenleri birleştirdikleri için mutating join örnekleridir.

Eksik Anahtarlar

Diyelim ki iki veri kümeniz var. İlk veri kümesi size olarak adlandırılır ve kişilerin adlarını ve gömlek bedenlerini içerir:

 > size
name size
1  Tom    M
2  Dan   XL
3 Keil    S

İkinci veri kümesi color olarak adlandırılır ve kişilerin soyadlarını, gömlek rengi tercihlerini içerir ve bazı bilgileri row.names özniteliğinde saklar:

 > color
     surname color
Tom     Jeon  <NA>
Dan    Smith  Dark
Bob McLadden Light

Burada neyin ters gidebileceğini fark ettiniz mi? İki tabloyu birleştirmek, anahtarlar eksik olduğunda veya yinelenen anahtarlar bulunduğunda karmaşık hale gelebilir. Bu örnekte, R'nin data frame yapıları önemli bilgileri row.names özniteliğinde saklıyor. Bu durumda, join fonksiyonları yalnızca data frame'in sütunlarına erişebildiğinden, anahtara bir join fonksiyonuyla erişemezsiniz.

Bu sorunu kolayca çözmenin püf noktası, tibble paketindeki rownames_to_column() fonksiyonunu kullanmaktır. Bu fonksiyon, satır adlarının veri içine bir sütun olarak eklendiği veri kümenizin bir kopyasını döndürür. rownames_to_column() fonksiyonunun ilk argümanı data frame nesneniz, ikinci argümanı ise eklemek istediğiniz sütunun adını belirten bir karakter dizisidir.

Aşağıdaki konsolda keşfetmeyi deneyin. size ve color veri kümeleri çalışma alanınıza önceden yüklenmiştir.

color <- data.frame(surname = c("Jeon", "Smith", "McLadden"), color = c(NA, "Dark", "Light")) row.names(color) <- c("Tom", "Dan", "Bob") size <- data.frame(name = c("Tom", "Dan", "Keil"), size = c("M", "XL", "S")) # Explore here!

Son Düşünceler

Gerçek dünyada veriler, birçok veri kümesine ve çok sayıda farklı formata bölünmüş halde gelebilir. R, tekil veri tablolarıyla çalışacak şekilde tasarlandığından, veri kümelerini tek bir tabloda dönüştürmek ve birleştirmek temel bir beceridir. R ile Veri İçe Aktarma & Temizleme yetenek yolunu tamamlayarak verileri her formatta ayrıştırmayı ve birleştirmeyi öğrenin. DataCamp'in R Veri İçe Aktarma eğitimine göz atın. İyi öğrenmeler!

Konular
R
Veri Bilimi
Veri Analizi

R hakkında daha fazlasını öğrenin

Kurs

R’ye Giriş

4 sa
3.1M
Vektörler, listeler ve veri çerçeveleri de dahil olmak üzere R'da veri analizinin temellerini öğrenin ve gerçek veri setleriyle R pratiği yapın.
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