Python - Xử lý dữ liệu CSV
Đọc dữ liệu từ CSV (các giá trị được phân tách bằng dấu phẩy) là điều cần thiết cơ bản trong Khoa học dữ liệu. Thông thường, chúng tôi lấy dữ liệu từ nhiều nguồn khác nhau có thể được xuất sang định dạng CSV để các hệ thống khác có thể sử dụng chúng. Thư viện Panadas cung cấp các tính năng sử dụng mà chúng ta có thể đọc toàn bộ tệp CSV cũng như từng phần chỉ cho một nhóm cột và hàng đã chọn.
Nhập dưới dạng tệp CSV
Tệp csv là một tệp văn bản trong đó các giá trị trong các cột được phân tách bằng dấu phẩy. Hãy xem xét dữ liệu sau có trong tệp có têninput.csv.
Bạn có thể tạo tệp này bằng Windows notepad bằng cách sao chép và dán dữ liệu này. Lưu tệp dưới dạnginput.csv bằng cách sử dụng tùy chọn lưu dưới dạng tất cả tệp (*. *) trong notepad.
id,name,salary,start_date,dept
1,Rick,623.3,2012-01-01,IT
2,Dan,515.2,2013-09-23,Operations
3,Tusar,611,2014-11-15,IT
4,Ryan,729,2014-05-11,HR
5,Gary,843.25,2015-03-27,Finance
6,Rasmi,578,2013-05-21,IT
7,Pranab,632.8,2013-07-30,Operations
8,Guru,722.5,2014-06-17,Finance
Đọc tệp CSV
Các read_csvchức năng của thư viện gấu trúc được sử dụng để đọc nội dung của tệp CSV vào môi trường python dưới dạng DataFrame của gấu trúc. Hàm có thể đọc các tệp từ Hệ điều hành bằng cách sử dụng đường dẫn thích hợp đến tệp.
import pandas as pd
data = pd.read_csv('path/input.csv')
print (data)
Khi chúng tôi thực thi đoạn mã trên, nó tạo ra kết quả như sau. Vui lòng lưu ý cách một cột bổ sung bắt đầu bằng 0 làm chỉ mục đã được tạo bởi hàm.
id name salary start_date dept
0 1 Rick 623.30 2012-01-01 IT
1 2 Dan 515.20 2013-09-23 Operations
2 3 Tusar 611.00 2014-11-15 IT
3 4 Ryan 729.00 2014-05-11 HR
4 5 Gary 843.25 2015-03-27 Finance
5 6 Rasmi 578.00 2013-05-21 IT
6 7 Pranab 632.80 2013-07-30 Operations
7 8 Guru 722.50 2014-06-17 Finance
Đọc các hàng cụ thể
Các read_csvchức năng của thư viện gấu trúc cũng có thể được sử dụng để đọc một số hàng cụ thể cho một cột nhất định. Chúng tôi cắt kết quả từ hàm read_csv bằng cách sử dụng mã được hiển thị bên dưới cho 5 hàng đầu tiên cho cột có tên là lương.
import pandas as pd
data = pd.read_csv('path/input.csv')
# Slice the result for first 5 rows
print (data[0:5]['salary'])
Khi chúng tôi thực thi đoạn mã trên, nó tạo ra kết quả như sau.
0 623.30
1 515.20
2 611.00
3 729.00
4 843.25
Name: salary, dtype: float64
Đọc các cột cụ thể
Các read_csvchức năng của thư viện gấu trúc cũng có thể được sử dụng để đọc một số cột cụ thể. Chúng tôi sử dụng phương pháp lập chỉ mục nhiều trục được gọi là.loc()vì mục đích này. Chúng tôi chọn hiển thị cột lương và tên cho tất cả các hàng.
import pandas as pd
data = pd.read_csv('path/input.csv')
# Use the multi-axes indexing funtion
print (data.loc[:,['salary','name']])
Khi chúng tôi thực thi đoạn mã trên, nó tạo ra kết quả như sau.
salary name
0 623.30 Rick
1 515.20 Dan
2 611.00 Tusar
3 729.00 Ryan
4 843.25 Gary
5 578.00 Rasmi
6 632.80 Pranab
7 722.50 Guru
Đọc các cột và hàng cụ thể
Các read_csvchức năng của thư viện gấu trúc cũng có thể được sử dụng để đọc một số cột cụ thể và hàng cụ thể. Chúng tôi sử dụng phương pháp lập chỉ mục nhiều trục được gọi là.loc()vì mục đích này. Chúng tôi chọn hiển thị cột lương và tên cho một số hàng.
import pandas as pd
data = pd.read_csv('path/input.csv')
# Use the multi-axes indexing funtion
print (data.loc[[1,3,5],['salary','name']])
Khi chúng tôi thực thi đoạn mã trên, nó tạo ra kết quả như sau.
salary name
1 515.2 Dan
3 729.0 Ryan
5 578.0 Rasmi
Đọc các cột cụ thể cho một loạt các hàng
Các read_csvchức năng của thư viện gấu trúc cũng có thể được sử dụng để đọc một số cột cụ thể và một loạt các hàng. Chúng tôi sử dụng phương pháp lập chỉ mục nhiều trục được gọi là.loc()vì mục đích này. Chúng tôi chọn hiển thị cột lương và tên cho một số hàng.
import pandas as pd
data = pd.read_csv('path/input.csv')
# Use the multi-axes indexing funtion
print (data.loc[2:6,['salary','name']])
Khi chúng tôi thực thi đoạn mã trên, nó tạo ra kết quả như sau.
salary name
2 611.00 Tusar
3 729.00 Ryan
4 843.25 Gary
5 578.00 Rasmi
6 632.80 Pranab