Nếu bạn bắt đầu tìm hiểu và làm việc dữ liệu dạng bảng trong Python, thì nhiều khả năng bạn sẽ bắt đầu với thư viện tên là Pandas, bởi vì Pandas là một thư viện giúp bạn làm việc với dữ liệu rất thuận tiện và hiệu quả, nhiều công việc xử lý dữ liệu bạn sẽ mất công viết ra rất nhiều code trong các công cụ khác, nhưng với Pandas, bạn chỉ cần viết 1 dòng. Bài viết này sẽ như một bảng tóm tắt về các đoạn code Pandas hay sử dụng trong việc xử lý dữ liệu với Python để bạn có thể tra cứu nhanh bằng cách tìm kiếm, hãy bookmark lại bài viết để có thể tiện tra cứu ngay khi cần. Nếu bạn đang tìm kiếm cách để có thể tự động hóa Excel từ Python, hãy tham khảo khóa học Lập trình tương tác Python Excel chìa khóa tối ưu công việc
- Lưu ý trước khi bắt đầu
- Cách đọc dữ liệu trong Pandas Python
- Cách đọc dữ liệu từ một file CSV
- Cách đọc dữ liệu từ một file TSV
- Cách đọc dữ liệu từ một file Excel
- Cách đọc dữ liệu từ một cơ sở dữ liệu SQL
- Cách đọc dữ liệu từ nguồn JSON (file, string hoặc URL)
- Cách đọc dữ liệu từ nguồn HTML (file, string hoặc URL)
- Cách đọc dữ liệu từ Clipboard
- Cách đọc dữ liệu từ kiểu từ điển trong Python
- Cách xuất dữ liệu từ Pandas DataFrame
- Cách xuất dữ liệu từ DataFrame ra file CSV
- Cách xuất dữ liệu từ DataFrame ra file Excel
- Cách xuất dữ liệu từ DataFrame ra SQL
- Cách xuất dữ liệu từ DataFrame ra JSON
- Cách tạo ra dữ liệu test
- Cách tạo bảng dữ liệu test với Numpy và Pandas
- Cách tạo ra series từ một list
- Cách thêm index là cột ngày tháng
- Cách xem và kiểm tra dữ liệu
- Cách xem n dòng đầu tiên của DataFrame
- Cách xem n dòng cuối cùng của DataFrame
- Cách lấy số dòng số cột của DataFrame
- Cách lấy số dòng số cột của DataFrame
- Xem thông tin về Index, kiểu dữ liệu và dung lượng của DataFrame
- Tổng kết thông tin thống kê cho các cột có kiểu dữ liệu là số
- Xem giá trị duy nhất và đếm số giá trị này, đếm cả trường hợp NA
- Tổng kết giá trị duy nhất và đếm cho tất cả các cột
- Trích xuất một phần dữ liệu trong Pandas DataFrame
- Trả về một cột của DataFrame dưới dạng Series
- Trả về các cột trong danh sách dưới dạng một DataFrame mới
- Chọn dữ liệu theo vị trí
- Chọn dữ liệu theo index
- Chọn dữ liệu ở dòng đầu tiên
- Chọn dữ liệu ở dòng đầu tiên, ô thứ nhất của DataFrame
- Cách làm sạch dữ liệu trong Pandas DataFrame
- Đổi tên các cột trong DataFrame theo thứ tự
- Kiểm tra dữ liệu với giá trị null
- Kiểm tra dữ liệu với giá trị khác null
- Cách bỏ toàn bộ dòng có dữ liệu null
- Cách bỏ toàn bộ cột có dữ liệu null
- Cách bỏ các dòng có nhiều hơn n giá trị null
- Cách thay toàn bộ giá trị null bằng giá trị x
- Cách thay toàn bộ giá trị null bằng giá trị khác
- Cách chuyển đổi kiểu dữ liệu của Series sang Float
- Cách thay giá trị này bởi giá trị khác
- Cách thay nhiều giá trị cùng lúc
- Cách đổi tên cột hàng loạt bằng lambda
- Cách đổi tên cột cụ thể trong DataFrame
- Cách đổi index trong DataFrame
- Cách đổi index hàng loạt trong DataFrame
- Cách lọc, sắp xếp, nhóm dữ liệu trong Pandas DataFrame
- Lọc dữ liệu theo điều kiện
- Sắp xếp dữ liệu
- Nhóm dữ liệu, pivot dữ liệu với groupby
- Pivot dữ liệu với pivot_table trong DataFrame
- Tính mean của tất cả các cột
- Tính max mỗi dòng
- Nối dữ liệu, gộp dữ liệu bằng Pandas DataFrame
- Nối dữ liệu DataFrame theo chiều dọc
- Nối dữ liệu DataFrame theo chiều ngang
- Join dữ liệu 2 DataFrames theo kiểu SQL
- Thống kê dữ liệu bằng Pandas DataFrame
- Thống kê dữ liệu cho các cột số
- Tính mean cho tất cả các cột
- Tính correlation giữa các cột
- Đếm số giá trị không null cho các cột
- Tìm giá trị lớn nhất cho mỗi cột
- Tìm giá trị nhỏ nhất cho mỗi cột
- Tìm giá trị median cho mỗi cột
- Tìm giá trị độ lệch tiêu chuẩn cho mỗi cột
Lưu ý trước khi bắt đầu
Như đã nói, bạn có thể bookmark lại bài viết này vào trình duyệt yêu thích của bạn, khi cần tìm một đoạn code nào đó, bạn có thể bấm Ctrl + F hoặc ⌘ + F (trên Mac) Để sử dụng được các đoạn code trong bài này, chúng ta có phần import như sau Ctrl + F hoặc ⌘ + F (trên Mac) Để sử dụng được các đoạn code trong bài này, chúng ta có phần import như sau
import pandas as pd import numpy as npvà chúng ta có các đối tượng với tên ngắn gọn như sau:
- pd.read_html(url)5 – Đối tượng DataFrame trong Pandas
- pd.read_html(url)6 – Đối tượng Series trong Pandas
Cách đọc dữ liệu trong Pandas Python
Các câu lệnh trong phần này giúp bạn có thể load hay import dữ liệu từ nhiều nguồn và nhiều dạng dữ liệu khác nhau
Cách đọc dữ liệu từ một file CSV
pd.read_csv(filename)Cách đọc dữ liệu từ một file TSV
pd.read_table(filename)Cách đọc dữ liệu từ một file Excel
pd.read_excel(filename)Cách đọc dữ liệu từ một cơ sở dữ liệu SQL
pd.read_sql(query, connection_object)Cách đọc dữ liệu từ nguồn JSON (file, string hoặc URL)
pd.read_json(json_string)Cách đọc dữ liệu từ nguồn HTML (file, string hoặc URL)
pd.read_html(url)Cách đọc dữ liệu từ Clipboard
pd.read_clipboard()Cách đọc dữ liệu từ kiểu từ điển trong Python
Cách đọc dữ liệu từ kiểu từ điển trong Python
pd.DataFrame(dict)Cách xuất dữ liệu từ Pandas DataFrame
Trong phần này, chúng ta sẽ tổng hợp một số cách xuất dữ liệu từ Pandas DataFrame ra một số nguồn thông dụng
Cách xuất dữ liệu từ DataFrame ra file CSV
df.to_csv(filename)Cách xuất dữ liệu từ DataFrame ra file Excel
pd.read_csv(filename)0Cách xuất dữ liệu từ DataFrame ra SQL
pd.read_csv(filename)1Cách xuất dữ liệu từ DataFrame ra JSON
pd.read_csv(filename)2Cách tạo ra dữ liệu test
Những dòng code trong phần này sẽ giúp bạn tạo ra dữ liệu test với sự giúp đỡ của thư viện Numpy
Cách tạo bảng dữ liệu test với Numpy và Pandas
Đoạn code này sẽ tạo ra một bảng gồm 23 dòng và 4 cột, được điền vào những giá trị ngẫu nhiên từ Numpy
pd.read_csv(filename)3Cách tạo ra series từ một list
pd.read_csv(filename)4Cách thêm index là cột ngày tháng
pd.read_csv(filename)5Cách xem và kiểm tra dữ liệu
Những câu lệnh trong phần này sẽ giúp bạn kiểm tra DataFrame hoặc Series trong Panda theo một vị trí cụ thể.
Cách xem n dòng đầu tiên của DataFrame
pd.read_csv(filename)6Cách xem n dòng cuối cùng của DataFrame
pd.read_csv(filename)7Cách lấy số dòng số cột của DataFrame
pd.read_csv(filename)8Cách lấy số dòng số cột của DataFrame
pd.read_csv(filename)8Xem thông tin về Index, kiểu dữ liệu và dung lượng của DataFrame
pd.read_table(filename)0Tổng kết thông tin thống kê cho các cột có kiểu dữ liệu là số
pd.read_table(filename)1Xem giá trị duy nhất và đếm số giá trị này, đếm cả trường hợp NA
Lưu ý Áp dụng cho đối tượng Series Áp dụng cho đối tượng Series
pd.read_table(filename)2Tổng kết giá trị duy nhất và đếm cho tất cả các cột
pd.read_table(filename)3Trích xuất một phần dữ liệu trong Pandas DataFrame
Những câu lệnh trong phần này sẽ giúp bạn trích xuất dữ liệu từ DataFrame hoặc Series trong Pandas
Trả về một cột của DataFrame dưới dạng Series
Trả về cột có label là col như một Series
pd.read_table(filename)4Trả về các cột trong danh sách dưới dạng một DataFrame mới
pd.read_table(filename)5Chọn dữ liệu theo vị trí
pd.read_table(filename)6Chọn dữ liệu theo index
pd.read_table(filename)7Chọn dữ liệu ở dòng đầu tiên
pd.read_table(filename)8Chọn dữ liệu ở dòng đầu tiên, ô thứ nhất của DataFrame
pd.read_table(filename)9Cách làm sạch dữ liệu trong Pandas DataFrame
Các đoạn code trong phần này sẽ giúp bạn xử lý và làm sạch dữ liệu
Đổi tên các cột trong DataFrame theo thứ tự
pd.read_excel(filename)0Kiểm tra dữ liệu với giá trị null
pd.read_excel(filename)1Kiểm tra dữ liệu với giá trị khác null
pd.read_excel(filename)2Cách bỏ toàn bộ dòng có dữ liệu null
pd.read_excel(filename)3Cách bỏ toàn bộ cột có dữ liệu null
pd.read_excel(filename)4Cách bỏ các dòng có nhiều hơn n giá trị null
pd.read_excel(filename)5Cách thay toàn bộ giá trị null bằng giá trị x
pd.read_excel(filename)6Cách thay toàn bộ giá trị null bằng giá trị khác
Thay giá trị null trong Series bởi giá trị mean của các giá trị trong Series (mean có thể thay được bởi các hàm khác trong module statistics của Python)
pd.read_excel(filename)7Cách chuyển đổi kiểu dữ liệu của Series sang Float
pd.read_excel(filename)8Cách thay giá trị này bởi giá trị khác
Thay tất cả các giá trị bằng pd.read_html(url)8 bởi pd.read_html(url)9
pd.read_excel(filename)9Cách thay nhiều giá trị cùng lúc
pd.read_sql(query, connection_object)0Cách đổi tên cột hàng loạt bằng lambda
pd.read_sql(query, connection_object)1Cách đổi tên cột cụ thể trong DataFrame
pd.read_sql(query, connection_object)2Cách đổi index trong DataFrame
pd.read_sql(query, connection_object)3Cách đổi index hàng loạt trong DataFrame
pd.read_sql(query, connection_object)4Cách lọc, sắp xếp, nhóm dữ liệu trong Pandas DataFrame
Các câu lệnh trong phần này sẽ giúp bạn thực hiện các thao tác lọc, sắp xếp hay nhóm dữ liệu trong DataFrame một cách dễ dàng
Lọc dữ liệu theo điều kiện
Lọc ra các dòng thỏa mãn điều kiện pd.read_clipboard()0 lớn hơn pd.read_clipboard()1
pd.read_sql(query, connection_object)5Lọc ra các dòng thỏa mãn điều kiện: có giá trị cột pd.read_clipboard()0 trong khoảng pd.read_clipboard()3 đến pd.read_clipboard()4
pd.read_sql(query, connection_object)6Sắp xếp dữ liệu
Sắp xếp dữ liệu trong cột pd.read_clipboard()5 theo chiều thuận (ascending)
pd.read_sql(query, connection_object)7Sắp xếp dữ liệu trong cột pd.read_clipboard()6 theo chiều nghịch (descending)
pd.read_sql(query, connection_object)8Sắp xếp pd.read_clipboard()5 theo chiều thuận và pd.read_clipboard()6 theo chiều nghịch
pd.read_sql(query, connection_object)9Nhóm dữ liệu, pivot dữ liệu với groupby
Pivot dữ liệu theo pd.read_clipboard()5
pd.read_json(json_string)0Pivot dữ liệu theo nhiều cột pd.read_clipboard()5, pd.read_clipboard()6
Pivot dữ liệu với pivot_table trong DataFrame
Tạo một Pivot Table, nhóm dữ liệu theo cột pd.read_clipboard()5, tính mean của pd.read_clipboard()6, pd.DataFrame(dict)4
pd.read_json(json_string)1Tính mean của tất cả các cột
pd.read_json(json_string)2Tính max mỗi dòng
Áp dụng hàm np.max() cho mỗi dòng dữ liệu
pd.read_json(json_string)3Nối dữ liệu, gộp dữ liệu bằng Pandas DataFrame
Nối dữ liệu DataFrame theo chiều dọc
Nối các dòng của pd.DataFrame(dict)5 xuống dưới pd.DataFrame(dict)6 (Số lượng các cột trong 2 DataFrames này phải giống nhau)
pd.read_json(json_string)4Nối dữ liệu DataFrame theo chiều ngang
Nối các cột của pd.DataFrame(dict)5 sang phải các cột của pd.DataFrame(dict)6 (Số lượng các dòng trong 2 DataFrames này phải giống nhau)
pd.read_json(json_string)5Join dữ liệu 2 DataFrames theo kiểu SQL
pd.read_json(json_string)6Join 2 DataFrame pd.DataFrame(dict)5 và pd.DataFrame(dict)6 theo cột chung pd.read_clipboard()5, kiểu Join là df.to_csv(filename)2. Ngoài ra còn hỗ trợ các kiểu join: df.to_csv(filename)3, df.to_csv(filename)4, df.to_csv(filename)5
Thống kê dữ liệu bằng Pandas DataFrame
Thống kê dữ liệu cho các cột số
pd.read_table(filename)1Tính mean cho tất cả các cột
pd.read_json(json_string)8Tính correlation giữa các cột
pd.read_json(json_string)9Đếm số giá trị không null cho các cột
pd.read_html(url)0Tìm giá trị lớn nhất cho mỗi cột
pd.read_html(url)1Tìm giá trị nhỏ nhất cho mỗi cột
pd.read_html(url)2Tìm giá trị median cho mỗi cột
pd.read_html(url)3Tìm giá trị độ lệch tiêu chuẩn cho mỗi cột
pd.read_html(url)4Hi vọng với bài viết này, Thanh sẽ giúp bạn làm việc dễ dàng hơn với DataFrame trong Pandas. Đừng quên tham khảo khóa học Lập trình tương tác Python Excel chìa khóa tối ưu công việc