Pandas DataFrame

Pandas DataFrame trong python là gì? Pandas DataFrame là một kiểu có cấu trúc dữ liệu giống như một mảng array 2 chiều hoặc giống như một bảng table bao gồm các dòng (rows) và các cột (columns).

Ví dụ

import pandas

data_series = { "Gia" :[500, 600, 800],"Soluong": [10, 20, 30]}
data = pandas.DataFrame(data_series)
print(data)

Kết quả :

   Gia  Soluong
0  500       10
1  600       20
2  800       30

Cách lấy giá trị theo hàng (rows) của DataFrame trong pandas.

Thuộc tính loc trong DataFrame.

DataFrame trong pandas sử dụng thuộc tính loc để lấy giá trị một hoặc nhiều dòng (rows).

Cách lấy giá trị một hàng (row) bởi index.

Ví dụ lấy 1 hàng đầu tiên bởi index 0 như sau:

Ví dụ

import pandas

data_series = { "Gia" :[500, 600, 800],"Soluong": [10, 20, 30]}
df_data = pandas.DataFrame(data_series)
row0 = df_data.loc[0]
print(row0)

Kết quả :

Gia        500
Soluong     10
Name: 0, dtype: int64

Kết quả ở ví dụ trên trả về là một Pandas Series.

Cách lấy giá trị nhiều hàng (rows) bởi nhiều index:

Ví dụ lấy giá trị nhiều hàng rows bởi một danh sách các index như sau:

Ví dụ

import pandas

data_series = { "Gia" :[500, 600, 800],"Soluong": [10, 20, 30]}
df_data = pandas.DataFrame(data_series)
rows_data = df_data.loc[[0,1,2]]
print(rows_data)

Kết quả :

   Gia  Soluong
0  500       10
1  600       20
2  800       30

Kết quả trong ví dụ trên trả về là một Pandas DataFrame.

Cách đặt tên Index trong DataFrame và truy cập tới DataFrame bởi tên index.

DataFrame cho phép bạn có thể đặt tên index theo ý muốn của riêng bạn.

Ví dụ

import pandas

data = {'Gia': [500,600,900], 'Soluong': [5,10,15]}
df_data = pandas.DataFrame(data, index=['Ngay1','Ngay2','Ngay3'])
print(df_data.loc['Ngay3'])

Kết quả :

Gia        900
Soluong     15
Name: Ngay3, dtype: int64

Cách load hay đọc File vào DataFrame.

Pandas trong Python có các hàm đọc file exel, csv, xml, html... một cách đơn giản và dễ dàng.

Sau đây là cách load file hay đọc file CSV vào DataFrame trong Python.

Ví dụ

import pandas

df_data = pandas.read_csv('data.csv')
print(df_data)