Read file csv trong python bằng pandas

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

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
import pandas as pd
import numpy as np
và 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()
Nội dung của Clipboard sẽ được chuyển tới
pd.read_html(url)
7

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)
0

Cách xuất dữ liệu từ DataFrame ra SQL

pd.read_csv(filename)
1

Cách xuất dữ liệu từ DataFrame ra JSON

pd.read_csv(filename)
2

Cá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)
3

Cách tạo ra series từ một list

pd.read_csv(filename)
4

Cách thêm index là cột ngày tháng

pd.read_csv(filename)
5

Cá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)
6

Cách xem n dòng cuối cùng của DataFrame

pd.read_csv(filename)
7

Cách lấy số dòng số cột của DataFrame

pd.read_csv(filename)
8

Cách lấy số dòng số cột của DataFrame

pd.read_csv(filename)
8

Xem thông tin về Index, kiểu dữ liệu và dung lượng của DataFrame

pd.read_table(filename)
0

Tổ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)
1

Xem 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
pd.read_table(filename)
2

Tổng kết giá trị duy nhất và đếm cho tất cả các cột

pd.read_table(filename)
3

Trí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)
4

Trả về các cột trong danh sách dưới dạng một DataFrame mới

pd.read_table(filename)
5

Chọn dữ liệu theo vị trí

pd.read_table(filename)
6

Chọn dữ liệu theo index

pd.read_table(filename)
7

Chọn dữ liệu ở dòng đầu tiên

pd.read_table(filename)
8

Chọn dữ liệu ở dòng đầu tiên, ô thứ nhất của DataFrame

pd.read_table(filename)
9

Cá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)
0

Kiểm tra dữ liệu với giá trị null

pd.read_excel(filename)
1

Kiểm tra dữ liệu với giá trị khác null

pd.read_excel(filename)
2

Cách bỏ toàn bộ dòng có dữ liệu null

pd.read_excel(filename)
3

Cách bỏ toàn bộ cột có dữ liệu null

pd.read_excel(filename)
4

Cách bỏ các dòng có nhiều hơn n giá trị null

pd.read_excel(filename)
5

Cách thay toàn bộ giá trị null bằng giá trị x

pd.read_excel(filename)
6

Cá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)
7

Cách chuyển đổi kiểu dữ liệu của Series sang Float

pd.read_excel(filename)
8

Cá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)
9

Cách thay nhiều giá trị cùng lúc

pd.read_sql(query, connection_object)
0

Cách đổi tên cột hàng loạt bằng lambda

pd.read_sql(query, connection_object)
1

Cách đổi tên cột cụ thể trong DataFrame

pd.read_sql(query, connection_object)
2

Cách đổi index trong DataFrame

pd.read_sql(query, connection_object)
3

Cách đổi index hàng loạt trong DataFrame

pd.read_sql(query, connection_object)
4

Cá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)
6

Sắ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)
9

Nhó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)
1

Tính mean của tất cả các cột

pd.read_json(json_string)
2

Tí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)
3

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 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)
4

Nố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)
5

Join 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)
1

Tính mean cho tất cả các cột

pd.read_json(json_string)
8

Tí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)
0

Tìm giá trị lớn nhất cho mỗi cột

pd.read_html(url)
1

Tìm giá trị nhỏ nhất cho mỗi cột

pd.read_html(url)
2

Tìm giá trị median cho mỗi cột

pd.read_html(url)
3

Tì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