DataFrame'leri birleştirme

Polars ile Veri Dönüşümü

Liam Brannigan

Data Scientist & Polars Contributor

Yorum verileri

shape: (5, 4)
| business         | location    | review | price |
| ---              | ---         | ---    | ---   |
| str              | str         | f64    | i64   |
|------------------|-------------|--------|-------|
| 7burgers         | Wakey Wakey | 4.2    | 15    |
| Bang Bang Burger | Forest Rd.  | 3.8    | 12    |
| Costa Coffee     | City Point  | 4.5    | 8     |
| Costa Coffee     | Waterloo    | 4.1    | 8     |
| The Queens Head  | Denman St.  | 4.7    | 25    |
Polars ile Veri Dönüşümü

İnceleme (inspections) veri seti

inspections = pl.read_csv("restaurant_inspections.csv")
shape: (5, 4)
| business        | location    | type       | hygiene_rating |
| ---             | ---         | ---        | ---            |
| str             | str         | str        | i64            |
|-----------------|-------------|------------|----------------|
| 7burgers        | Wakey Wakey | restaurant | 4              |
| Costa Coffee    | City Point  | café       | 5              |
| Costa Coffee    | Waterloo    | café       | 3              |
| The Queens Head | Denman St.  | bar        | 5              |
| Wagamama        | Soho        | restaurant | 4              |
Polars ile Veri Dönüşümü

Join nedir?

Tek bir DataFrame gösteren diyagram.

Polars ile Veri Dönüşümü

Join nedir?

İki DataFrame gösteren diyagram.

Polars ile Veri Dönüşümü

Join nedir?

Eşleşen anahtar vurgulanmış iki DataFrame'i gösteren diyagram.

Polars ile Veri Dönüşümü

Join nedir?

Paylaşılan sütunlardaki eşleşen satırlara göre iki DataFrame'in birleştirildiğini gösteren diyagram.

Polars ile Veri Dönüşümü

Join nedir?

Paylaşılan sütunlardaki eşleşen satırlara göre iki DataFrame'in, eşleşen anahtar vurgulanarak birleştirildiğini gösteren diyagram.

Polars ile Veri Dönüşümü

Tek sütunda join

reviews.join(                                       )
Polars ile Veri Dönüşümü

Tek sütunda join

reviews.join(inspections,                           )
Polars ile Veri Dönüşümü

Tek sütunda join

reviews.join(inspections, on="business"             )
Polars ile Veri Dönüşümü

Tek sütunda join

reviews.join(inspections, on="business", how="inner")
shape: (6, 7)
| business      | location    | ... | location_right | hygiene_rating |
| ---           | ---         | ... | ---            | ---            |
| str           | str         | ... | str            | i64            |
|---------------|-------------|-----|----------------|----------------|
| 7burgers      | Wakey Wakey | ... | Wakey Wakey    | 4              |
| Costa Coffee  | City Point  | ... | City Point     | 5              |
| Costa Coffee  | Waterloo    | ... | City Point     | 5              |
| Costa Coffee  | City Point  | ... | Waterloo       | 3              |
| Costa Coffee  | Waterloo    | ... | Waterloo       | 3              |
| The Queens Hd | Denman St.  | ... | Denman St.     | 5              |
Polars ile Veri Dönüşümü

Birden çok sütunda join

reviews.join(inspections, on=["business", "location"])
Polars ile Veri Dönüşümü

Birden çok sütunda join

reviews.join(inspections, on=["business", "location"])
shape: (4, 6)
| business        | location    | review | price | type       | hygiene_rating |
| ---             | ---         | ---    | ---   | ---        | ---            |
| str             | str         | f64    | i64   | str        | i64            |
|-----------------|-------------|--------|-------|------------|----------------|
| 7burgers        | Wakey Wakey | 4.2    | 15    | restaurant | 4              |
| Costa Coffee    | City Point  | 4.5    | 8     | café       | 5              |
| Costa Coffee    | Waterloo    | 4.1    | 8     | café       | 3              |
| The Queens Head | Denman St.  | 4.7    | 25    | bar        | 5              |
Polars ile Veri Dönüşümü

Left join

reviews.join(inspections, on=["business", "location"],           )
Polars ile Veri Dönüşümü

Left join

reviews.join(inspections, on=["business", "location"], how="left")
shape: (5, 6)
| business         | location    | review | price | type       | hygiene_rating |
| ---              | ---         | ---    | ---   | ---        | ---            |
| str              | str         | f64    | i64   | str        | i64            |
|------------------|-------------|--------|-------|------------|----------------|
| 7burgers         | Wakey Wakey | 4.2    | 15    | restaurant | 4              |
| Bang Bang Burger | Forest Rd.  | 3.8    | 12    | null       | null           |
| Costa Coffee     | City Point  | 4.5    | 8     | café       | 5              |
| Costa Coffee     | Waterloo    | 4.1    | 8     | café       | 3              |
| The Queens Head  | Denman St.  | 4.7    | 25    | bar        | 5              |
Polars ile Veri Dönüşümü

Full join

reviews.join(inspections, on=["business", "location"],                          )
Polars ile Veri Dönüşümü

Full join

reviews.join(inspections, on=["business", "location"], how="full"               )
Polars ile Veri Dönüşümü

Full join

reviews.join(inspections, on=["business", "location"], how="full", coalesce=True)
shape: (6, 6)
| business         | location    | review | price | type       | hygiene_rating |
| ---              | ---         | ---    | ---   | ---        | ---            |
| str              | str         | f64    | i64   | str        | i64            |
|------------------|-------------|--------|-------|------------|----------------|
| 7burgers         | Wakey Wakey | 4.2    | 15    | restaurant | 4              |
| Costa Coffee     | City Point  | 4.5    | 8     | café       | 5              |
| Costa Coffee     | Waterloo    | 4.1    | 8     | café       | 3              |
| The Queens Head  | Denman St.  | 4.7    | 25    | bar        | 5              |
| Wagamama         | Soho        | null   | null  | restaurant | 4              |
| Bang Bang Burger | Forest Rd.  | 3.8    | 12    | null       | null           |
Polars ile Veri Dönüşümü

Join stratejisi seçme

2 tablo

Polars ile Veri Dönüşümü

Inner join

Inner join gösterimi

Polars ile Veri Dönüşümü

Left join

Left join gösterimi

Polars ile Veri Dönüşümü

Full join

Full join gösterimi

Polars ile Veri Dönüşümü

Haydi pratik yapalım!

Polars ile Veri Dönüşümü

Preparing Video For Download...