
Việc chuyển đổi dữ liệu sang các định dạng có thể đọc được như biểu đồ và tài liệu sẽ giúp trực quan hóa và biểu diễn dữ liệu hiệu quả. Pandas của Python là hàm thư viện có thế mạnh lớn khi đây là thư viện mã nguồn mở, có độ mạnh và linh hoạt trong xử lý dữ liệu. Với bộ dữ liệu lớn như đám mây điểm LiDAR, Pandas có thể xử lý, phân tích và trực quan hóa dữ liệu.
Mở đầu
Pandas được thiết kế để làm việc dễ dàng và trực quan với dữ liệu có cấu trúc (như bảng, dữ liệu nhiều chiều hoặc không đồng nhất) và dữ liệu chuỗi thời gian [1]. Pandas được phát triển bởi Wes McKinney vào năm 2008 và được sử dụng chủ yếu để thao tác, phân tích và làm sạch dữ liệu. Pandas hỗ trợ nhiều kiểu cấu trúc dữ liệu cũng như các phương thức hỗ trợ thao tác dữ liệu số và dữ liệu thời gian (time series) [2].
Thư viện Pandas thích hợp với các loại dữ liệu sau [1]: Dữ liệu dạng bảng với các cột được nhập không đồng nhất, như trong bảng SQL hoặc bảng tính Excel; dữ liệu chuỗi thời gian theo thứ tự và không có thứ tự; dữ liệu ma trận tùy ý; dữ liệu chưa được dán nhãn vào cấu trúc dữ liệu Pandas được xây dựng dựa trên NumPy.
Hai cấu trúc dữ liệu chính của Pandas là Series (1 chiều) và DataFrame (2 chiều). Pandas xử lý được phần lớn các trường hợp điển hình trong tài chính, thống kê, khoa học xã hội và nhiều lĩnh vực kỹ thuật.
Pandas được dùng trong [4]:
Tính toán số liệu thống kê, trả lời các câu hỏi về dữ liệu như giá trị trung bình, tối đa, tối thiểu của mỗi cột. Cột A có tương quan với cột B không? Sự phân bố dữ liệu trong cột C trông như thế nào?...
Làm sạch dữ liệu bằng cách thực hiện những việc như xóa các 2giá trị bị thiếu và lọc các hàng và cột theo một số tiêu chí.
Trực quan hóa dữ liệu với sự trợ giúp từ Matplotlib, biểu đồ thanh, đường kẻ, biểu đồ,.... và lưu trữ các dữ liệu đã được làm sạch, chuyển đổi chúng thành CSV, tệp hoặc các cơ sở dữ liệu.
Các lệnh xử lý dữ liệu đám mây điểm LiDAR trong thư viện Pandas
Mô tả dữ liệu thực nghiệm:
Dữ liệu thực nghiệm là dữ liệu về tạo độ và độ cao của điểm LiDAR được thu thập tại Hà Nội với 343.944 dòng dữ liệu và 11 cột thuộc tính. Bài toán thử nghiệm được đặt ra là phát hiện hiện giá trị mất mát, thay thế bằng giá trị 0 và các thao tác xử lý dữ liệu cơ bản. Dữ liệu đám mây điểm được chuyển từ file .las sang file có định dạng .csv để thao tác và xử lý trên Pandas.
Cài đặt thư viện Pandas trong Python 3.11
Sau khi cài đặt thư viện Pandas thành công, ta sẽ tiến hành import thư viện vào source code:
Đọc file dữ liệu .csv với lệnh read_csv
Hiển thị dữ liệu của file với lệnh head()
Phân tích dữ liệu với lệnh describe():
Khi thực thi lệnh describe() dữ liệu đám mây điểm sẽ được thống kê với các chỉ số như tổng số điểm, giá trị trung bình, độ lệch chuẩn (std),...
Phát hiện những giá trị null và gán cho giá trị null đó thành False trong bộ dữ liệu với lệnh isnull()
Sau đó, thay thế giá trị null thành giá trị 0 với lệnh fillna(0):
Hiển thị độ tương quan của dữ liệu với lệnh corr():
Đếm giá trị không null trên từng cột với lệnh count():
Hiển thị trung vị trên từng cột dữ liệu với lệnh median():
Với bộ dữ liệu được xử lý và phân tích với các lệnh cơ bản trong thư viện Pandas, đám mây điểm LiDAR đã được đọc, thao tác và xử lý.
Pandas là hàm thư viện mạnh và linh hoạt của Python. Với các phương thức và câu lệnh đơn giản dễ sử dụng, phân tích dữ liệu trở nên đơn giản và dễ dàng hơn.
Tài liệu tham khảo
1. ERX, “Làm quen với thư viện pandas và dataframe,” 2023. [Trực tuyến]. Available: https://erx.vn/lam-quen-voi-thu-vien-pandas-va-dataframe-7122812051.html;
2. Flinters, “Pandas trong python,” 2021. [Trực tuyến]. Available: https://labs.flinters.vn/pandas/pandas-trong-python-bai-1-gioi-thieu-chung.
NGUYỄN THỊ HỮU PHƯƠNG
Khoa Công nghệ thông tin, Trường Đại học Mỏ - Địa chất
Nguồn: Tạp chí Tài nguyên và Môi trường số 5 năm 2024