Veri Bilimi & Veri Manipülasyonu - Pandas

DataFrame Birleştirme - merge() Yöntemi

Yayın tarihi :20-Ara-21
Bölüm kodlarını ve/veya veri setlerini indir.

DataFrame birleştirme işlemi için merge() fonksiyonu kullanılır. 

Söz dizimi: merge(right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=False, suffixes=('_x', '_y'), copy=True, indicator=False, validate=None)

  • right, birleştirilecek nesneleri temsil eder. (Örn, df1,df2)
  • how, birleşimin nasıl olacağını temsil eder. "left","right","outer","inner","cross" olmak üzere 5 farklı girdi alabilir. Default olarak "inner"dir.
  • on, birleştirilmek istenen sütunları temsil eder.

Örneklerde kullanılmak üzere "df1" ve "df2" isminde iki farklı DataFrame oluşturalım.

import pandas as pd
#1.DataFrame
df1=pd.DataFrame({"bolge":["Marmara","İc Anadolu","Karedeniz"],
                  "sehir":["İstanbul","Ankara","Trabzon"]})
df1

Çıktı:

#2.DataFrame
df2=pd.DataFrame({"sehir":["İstanbul","Ankara","Trabzon"],
                  "nufus":[15460000,5663000,811901],
                 'plaka':["34","06","61"]})
df2

Çıktı:

1. "df1" de sehir sütunu ile "df2" deki sehir sütunu ortak olduğu için; 2 tablo da birleştirilebilir.

df1_2=pd.merge(df1,df2)
df1_2

Çıktı:

2. Birleştirmek istenilen ortak sütun belirterek de birleşim yapılabilir.

df1_2=pd.merge(df1,df2,on="sehir")
df1_2

Çıktı:

#3.DataFrame
df3=pd.DataFrame({"plaka":["34","06","61","16","06"],
                  "personel":["Enes","Sefa","Defne","Mustafa","Ali"]})
df3

Çıktı:

3. "df3" tablosundaki Mustafa personeli, 16 plakasının bir karşılığı olmadığı için birleşim tablosuna girmeyecektir.

df=pd.merge(df1_2,df3,how="inner") #default olarak da how="inner"dir
df

Çıktı:

4. "df3" tablosundaki Mustafa personeli, 16 plakasının bir karşılığı olmadığı halde "how='outer'" ile tabloda yerini alacaktır.

df1_2_3=pd.merge(df1_2,df3,how="outer")
df1_2_3

Çıktı:

Paylaş:

Yorum Yap (*Yorumunuza kod eklemek isterseniz Kod Parçacığı Ekle butonuna tıklayarak ekleyebilirsiniz.)

Yorumlar

Henüz hiç yorum yapılmamış, ilk yorum yapan sen ol.