Gấu trúc 2.0 ở đây

Feb 27 2023
Python Pandas 2.0 vừa được phát hành và đây là những gì họ đã thêm và cải thiện (điều này sẽ thay đổi rất nhiều thứ) Nếu bạn làm việc trong ngành dữ liệu (kỹ thuật dữ liệu/khoa học/ml), bạn có thể đã biết Pandas đang nói gì đặc biệt về Dữ liệu Kỹ thuật, Pandas từng bị ghét rất nhiều vì nó không mang lại hiệu suất tối ưu khi làm việc với tập dữ liệu lớn.

Python Pandas 2.0 vừa được phát hành và đây là những gì họ đã thêm và cải thiện (điều này sẽ thay đổi rất nhiều thứ)

Ảnh của Pascal Müller trên Bapt

Nếu bạn làm việc trong ngành dữ liệu (kỹ thuật dữ liệu/khoa học/ml), bạn có thể đã biết Pandas là gì

Nói riêng về Kỹ thuật dữ liệu, Pandas từng bị ghét rất nhiều vì nó không mang lại hiệu suất tối ưu khi làm việc với một tập dữ liệu lớn.

Pandas 2.0 là một bước được thực hiện theo hướng này, đây là 3 tính năng hàng đầu

Hoạt động nhanh hơn và tiết kiệm bộ nhớ hơn

Họ đã thêm hỗ trợ cho pyarrow trong phần phụ trợ.

Chương trình phụ trợ pyarrow là một tính năng mới trong pandas 2.0 cho phép người dùng sử dụng Mũi tên Apache làm định dạng lưu trữ dữ liệu thay thế cho DataFrames và Sê-ri của gấu trúc.

Điều này có nghĩa là khi bạn đọc hoặc ghi các tệp Parquet trong pandas 2.0, nó sẽ sử dụng pyarrow theo mặc định để xử lý dữ liệu, dẫn đến các thao tác nhanh hơn và tiết kiệm bộ nhớ hơn.

một pyarrow là gì?
Pyarrow là thư viện cung cấp định dạng bộ nhớ dạng cột, đây là cách tổ chức dữ liệu giúp dễ đọc và xử lý song song.

Tóm lại, việc sử dụng chương trình phụ trợ pyarrow trong pandas 2.0 có thể dẫn đến các thao tác dữ liệu nhanh hơn và tiết kiệm bộ nhớ hơn, đặc biệt là khi làm việc với các tập dữ liệu lớn.

PyArrow được hỗ trợ

Tối ưu hóa Copy-on-Write

Tương tự như Spark và cách nó thực thi mã

Đây là một kỹ thuật tối ưu hóa bộ nhớ được sử dụng trong gấu trúc để cải thiện hiệu suất và giảm mức sử dụng bộ nhớ khi làm việc với các tập dữ liệu lớn.

Ý tưởng là khi bạn tạo một bản sao của một đối tượng pandas, chẳng hạn như DataFrame hoặc Sê-ri, thay vì tạo một bản sao dữ liệu mới ngay lập tức, pandas sẽ tạo một tham chiếu đến dữ liệu gốc và trì hoãn việc tạo một bản sao mới cho đến khi bạn sửa đổi dữ liệu theo một cách nào đó.

Điều này có nghĩa là nếu bạn có nhiều bản sao của cùng một dữ liệu, tất cả chúng có thể tham chiếu cùng một bộ nhớ cho đến khi bạn thực hiện thay đổi đối với một trong số chúng. Điều này có thể giảm đáng kể mức sử dụng bộ nhớ và cải thiện hiệu suất vì bạn không cần phải tạo các bản sao dữ liệu không cần thiết.

Nhìn chung, Copy-on-Write là một kỹ thuật tối ưu hóa mạnh mẽ có thể giúp bạn làm việc với các tập dữ liệu lớn hiệu quả hơn và tốn ít bộ nhớ hơn.

Copy-On-Write

Chỉ mục hiện có thể chứa các loại số NumPy

Tóm tắt nhanh: Chỉ mục tốt hơn, truy cập nhanh hơn và tính toán

Chi tiết:
Pandas 2.0 cho phép Index giữ bất kỳ dtype số NumPy nào, bao gồm int8, int16, int32, int64, uint8, uint16, uint32, uint64, float32 và float64.

Trước đây, chỉ các kiểu int64, uint64 và float64 được hỗ trợ.

Do đó, các thao tác trước đây đã tạo chỉ mục 64 bit giờ đây có thể tạo chỉ mục có kích thước bit thấp hơn, chẳng hạn như chỉ mục 32 bit.

Chỉ mục NumPy

TL;DR
1. Đã thêm pyarrow vào phần hỗ trợ giúp hoạt động nhanh hơn và tiết kiệm bộ nhớ hơn.
2. Tối ưu hóa Copy-on-Write: tương tự như Spark và cách nó thực thi mã
3. Chỉ mục hiện có thể giữ các loại số NumPy dẫn đến hoạt động nhanh hơn

Tôi cũng sẽ thêm các hướng dẫn về các tính năng này trong khóa học Python cho Kỹ thuật dữ liệu của mình.

Nếu bạn muốn tìm hiểu mọi thứ về Python cho Data Engineering thì hãy kiểm tra

https://learn.datawithdarshil.com/courses/Python-for-Data-Engineering