Thao túng Dataframes với Pandas

Submitted by tinhxleev2 on Mon, 04/27/2020 - 03:18

Trong phần này sẽ có các mục nhỏ sau đây, phần này mình tóm tắt nội dung bài giảng trên Datacamp các file đều thuộc bản quyền của họ.

Extracting and transforming data (tách và chuyển đổi dữ liệu)

Cách thiết lập chỉ số, thái, lọc và chuyển đổi DataFrames sử dụng các bộ dữ liêu khác nhau. Trong phân này có dữ liệu bầu cử của Mỹ năm 2012 của các bang Pennsylvania và dự liệu thời tiết của Pittsburgh.

.loc[] - Truy cập vào một nhóm hàng và cột bằng tên hàng và cột hay một boolean array

.loc[] về cơ bản là dựa trên nhãn mình dịch là tên hàng hay cột nhưng có thể hiểu là nhãn hàng hay cột.

.loc dùng để truy cập giá trị từ label của hàng và cột. .loc cũng có thể sử dụng để thái dataframe

Ví dụ, muốn kiểm tra giá trị ở một ô nào đó trong một DataFrame.

ngaysinh.loc['hung', 'sinh']

 df = pd.DataFrame([[11, 22], [34, 45], [17, 28]],
...      index=['hoang', 'le', 'nguyen'],
...      columns=['toc_do_cham', 'toc_do_nhanh'])

Truy cập vào giá trị của hàng 'hoang' và cột 'toc_do_cham'

df.loc['hoang', 'toc_do_cham'] 

# tương đương với df.iloc[0, 0] kiểm tra bằng cách

print(df.loc['hoang', 'toc_do_cham'] == df.iloc[0, 0]) sẽ cho ra kết quả true

#iloc lấy cách hàng theo thứ tự index loc thì lấy theo tên nhóm các hàng và các cột.

#Indexing và xắp sếp lại cột

Trong một vài tình huống mình sẽ cần tách một vài hàng hay cột của một DataFrames sang một DataFrame khác. Hoặc lựa chọn danh sách một số cột để tạo một DataFrame mới. 

Mình lấy ví dụ

#Nhập gói pandas

import pandas as pd

#Thiết lập DataFrame từ file csv có url http://samplecsvs.s3.amazonaws.com/Sacramentorealestatetransactions.csv

df = pd.read_csv('http://samplecsvs.s3.amazonaws.com/Sacramentorealestatetransactions.csv', ';')

Thái DataFrames - có 2 mục thái series và thái dataframe

#Lựa chọn cột về cơ bản lựa chọn cột 'trứng' trong df sẽ là một chuỗi pandas - là array một chiều với label index và cũng là hybrid của numpy array và dictionary. Có thể kiểm tra kiểu bằng cách type(df['trứng']). Một dataframe cũng có thể được hiểu là gồm series các cột chia sẻ cùng các row label. 

df['trứng']

Giờ bạn có thể sẽ muốn xem giá trị series ở các hàng 1, 2, và 3 trong cột 'trứng'

df['trứng'][1:4]

Hay như giá trị ở hàng thứ 4 của cột 'trứng'

df['trứng'][4]

Advanced indexing (Chỉ số nâng cao)

Rearranging and reshaping data (Bố trí lại và nắn hình)

Grouping data (Nhóm lại dữ liệu)