Làm sạch dữ liệu văn bản

Biến đổi dữ liệu với Polars

Liam Brannigan

Data Scientist & Polars Contributor

Gặp gỡ giảng viên của bạn

$$

$$

  • Liam Brannigan, Trưởng nhóm Khoa học Dữ liệu
  • Chuyên gia ML và Kỹ thuật Dữ liệu
  • Cộng tác viên Polars

Ảnh hồ sơ giảng viên.

Biến đổi dữ liệu với Polars

Công cụ Chuyển đổi

Hoạt họa

Biến đổi dữ liệu với Polars

Khóa học này có phù hợp với bạn?

$$

  • Tạo một Polars DataFrame

$$

  • Dùng biểu thức Polars

$$

  • Gom nhóm và tổng hợp

Giới thiệu về Polars - trang khóa học

Biến đổi dữ liệu với Polars

Chương 1

Sơ đồ làm sạch dữ liệu văn bản

Biến đổi dữ liệu với Polars

Chương 2

Dữ liệu chuỗi thời gian

Biến đổi dữ liệu với Polars

Chương 3

Kết hợp DataFrame

Biến đổi dữ liệu với Polars

Chương 4

Quy trình tùy chỉnh và tương quan

Biến đổi dữ liệu với Polars

Làm quen dữ liệu của chúng ta

import polars as pl

ratings = pl.read_csv("restaurant_ratings.csv")
shape: (5, 5)
| business         | location     | type       | rating | capacity |
| ---              | ---          | ---        | ---    | ---      |
| str              | str          | str        | f64    | f64      |
|------------------|--------------|------------|--------|----------|
|   7burgers       | Wakey Wakey  | restaurant | 5.0    | 55.0     |
| Bang Bang Burger | Forest Rd.   | restaurant | 4.0    | 55.0     |
| Costa Coffee     | City Point   | café       | 5.0    | 41.0     |
|  Costa Coffee    | The Moorgate | takeaway   | 5.0    | 0.0      |
| The Queens Head  | Denman St.   | bar        | 5.0    | 187.0    |
Biến đổi dữ liệu với Polars

Ứng dụng gợi ý nhà hàng

shape: (3, 5)
| business         | location     | type       | rating | capacity |
| ---              | ---          | ---        | ---    | ---      |
| str              | str          | str        | f64    | f64      |
|------------------|--------------|------------|--------|----------|
|   7burgers       | Wakey Wakey  | restaurant | 5.0    | 55.0     |
| Bang Bang Burger | Forest Rd.   | restaurant | 4.0    | 55.0     |
| Costa Coffee     | City Point   | café       | 5.0    | 41.0     |
  • Xóa khoảng trắng
  • Chuyển kiểu cột rating và capacity
  • Tạo cột định danh duy nhất
Biến đổi dữ liệu với Polars

Ép kiểu với biểu thức

ratings.with_columns(

)
Biến đổi dữ liệu với Polars

Ép kiểu với biểu thức

ratings.with_columns(
    pl.col("rating").cast(pl.Int64)
)
shape: (5, 5)
| business         | location     | type       | rating | capacity |
| ---              | ---          | ---        | ---    | ---      |
| str              | str          | str        | i64    | f64      |
|------------------|--------------|------------|--------|----------|
|   7burgers       | Wakey Wakey  | restaurant | 5      | 55.0     |
| Bang Bang Burger | Forest Rd.   | restaurant | 4      | 55.0     |
| Costa Coffee     | City Point   | café       | 5      | 41.0     |
|  Costa Coffee    | The Moorgate | takeaway   | 5      | 0.0      |
| The Queens Head  | Denman St.   | bar        | 5      | 187.0    |
Biến đổi dữ liệu với Polars

Ép kiểu nhiều cột

ratings.cast(                      )
Biến đổi dữ liệu với Polars

Ép kiểu nhiều cột

ratings.cast({                    })
Biến đổi dữ liệu với Polars

Ép kiểu nhiều cột

ratings.cast({pl.Float64: pl.Int64})
shape: (5, 5)
| business         | location     | type       | rating | capacity |
| ---              | ---          | ---        | ---    | ---      |
| str              | str          | str        | i64    | i64      |
|------------------|--------------|------------|--------|----------|
|   7burgers       | Wakey Wakey  | restaurant | 5      | 55       |
| Bang Bang Burger | Forest Rd.   | restaurant | 4      | 55       |
| Costa Coffee     | City Point   | café       | 5      | 41       |
|  Costa Coffee    | The Moorgate | takeaway   | 5      | 0        |
| The Queens Head  | Denman St.   | bar        | 5      | 187      |
Biến đổi dữ liệu với Polars

Làm sạch dữ liệu văn bản

shape: (5, 5)
| business         | location        | type       | rating | capacity |
| ---              | ---             | ---        | ---    | ---      |
| str              | str             | str        | i64    | i64      |
|------------------|-----------------|------------|--------|----------|
|   7burgers       | Wakey Wakey     | restaurant | 5      | 55       |
| Bang Bang Burger | Forest Rd.      | restaurant | 4      | 55       |
| Costa Coffee     | City Point      | café       | 5      | 41       |
|  Costa Coffee    | The Moorgate    | takeaway   | 5      | 0        |
| The Queens Head  | Denman St.      | bar        | 5      | 187      |
Biến đổi dữ liệu với Polars

Làm sạch dữ liệu văn bản

  • .str.contains()
  • .str.strip_chars()
  • .str.strip_chars_start()
  • .str.to_lowercase()
  • ...
Biến đổi dữ liệu với Polars

Làm sạch dữ liệu văn bản

  • .str.contains()
  • .str.strip_chars()
  • .str.strip_chars_start()
  • .str.to_lowercase()
  • ...
1 https://docs.pola.rs/api/python/stable/reference/expressions/string.html
Biến đổi dữ liệu với Polars

Làm sạch dữ liệu văn bản

  • .str.contains()
  • .str.strip_chars()
  • .str.strip_chars_start()
  • .str.to_lowercase()
  • ...
1 https://docs.pola.rs/api/python/stable/reference/expressions/string.html
Biến đổi dữ liệu với Polars

Làm sạch dữ liệu văn bản

ratings.with_columns(

)
Biến đổi dữ liệu với Polars

Làm sạch dữ liệu văn bản

ratings.with_columns(
    pl.col("business")
)
Biến đổi dữ liệu với Polars

Làm sạch dữ liệu văn bản

ratings.with_columns(
    pl.col("business").str.strip_chars_start()
)
shape: (5, 5)
| business         | location     | type       | rating | capacity |
| ---              | ---          | ---        | ---    | ---      |
| str              | str          | str        | i64    | i64      |
|------------------|--------------|------------|--------|----------|
| 7burgers         | Wakey Wakey  | restaurant | 5      | 55       |
| Bang Bang Burger | Forest Rd.   | restaurant | 4      | 55       |
| Costa Coffee     | City Point   | café       | 5      | 41       |
| Costa Coffee     | The Moorgate | takeaway   | 5      | 0        |
| The Queens Head  | Denman St.   | bar        | 5      | 187      |
Biến đổi dữ liệu với Polars

Kết hợp dữ liệu văn bản

shape: (5, 5)
| business         | location        | type       | rating | capacity |
| ---              | ---             | ---        | ---    | ---      |
| str              | str             | str        | i64    | i64      |
|------------------|-----------------|------------|--------|----------|
| 7burgers         | Wakey Wakey     | restaurant | 5      | 55       |
| Bang Bang Burger | Forest Rd.      | restaurant | 4      | 55       |
| Costa Coffee     | City Point      | café       | 5      | 41       |
| Costa Coffee     | The Moorgate    | takeaway   | 5      | 0        |
| The Queens Head  | Denman St.      | bar        | 5      | 187      |
Biến đổi dữ liệu với Polars

Kết hợp dữ liệu văn bản

ratings.with_columns(

)
Biến đổi dữ liệu với Polars

Kết hợp dữ liệu văn bản

ratings.with_columns(
    pl.concat_str(
)
Biến đổi dữ liệu với Polars

Kết hợp dữ liệu văn bản

ratings.with_columns(
    pl.concat_str("business", "location"
)
Biến đổi dữ liệu với Polars

Kết hợp dữ liệu văn bản

ratings.with_columns(
    pl.concat_str("business", "location", separator=":")
)
Biến đổi dữ liệu với Polars

Kết hợp dữ liệu văn bản

ratings.with_columns(
    pl.concat_str("business", "location", separator=":").alias("id")
)
shape: (5, 5)
| business         | location     | type       | ... | id                            |
| ---              | ---          | ---        | --- | ---                           |
| str              | str          | str        | ... | str                           |
|------------------|--------------|------------|-----|-------------------------------|
| 7burgers         | Wakey Wakey  | restaurant | ... | 7burgers:Wakey Wakey          |
| Bang Bang Burger | Forest Rd.   | restaurant | ... | Bang Bang Burger:Forest Rd.   |
| Costa Coffee     | City Point   | café       | ... | Costa Coffee:City Point       |
| Costa Coffee     | The Moorgate | takeaway   | ... | Costa Coffee:The Moorgate     |
| The Queens Head  | Denman St.   | bar        | ... | The Queens Head:Denman St.    |
Biến đổi dữ liệu với Polars

Ayo berlatih!

Biến đổi dữ liệu với Polars

Preparing Video For Download...