Computer >> Máy Tính >  >> Lập trình >> Python

Python Pandas - Lọc DataFrame giữa hai ngày

Để lọc DataFrame giữa hai ngày, hãy sử dụng dataframe.loc . Đầu tiên, hãy nhập thư viện được yêu cầu -

import pandas as pd

Tạo Từ điển danh sách với các bản ghi ngày tháng -

d = {'Car': ['BMW', 'Lexus', 'Audi', 'Mercedes', 'Jaguar', 'Bentley'],'Date_of_Purchase': ['2021-07-10', '2021-08-12', '2021-06-17', '2021-03-16', '2021-02-19', '2021-08-22']
   }

Tạo khung dữ liệu từ danh sách từ điển ở trên

dataFrame = pd.DataFrame(d)

Tìm nạp ô tô được mua trong khoảng thời gian từ hai ngày, tức là Ngày đầu tiên:2021-05-10 và Ngày thứ hai:2021-08-25 -

resDF = dataFrame.loc[(dataFrame["Date_of_Purchase"] >= "2021-05-10") & (dataFrame["Date_of_Purchase"] <= "2021-08-25")]

Ví dụ

Sau đây là mã -

import pandas as pd

# dictionary of lists
d = {'Car': ['BMW', 'Lexus', 'Audi', 'Mercedes', 'Jaguar', 'Bentley'],'Date_of_Purchase': ['2021-07-10', '2021-08-12', '2021-06-17', '2021-03-16', '2021-02-19', '2021-08-22']
   }

# creating dataframe from the above dictionary of lists
dataFrame = pd.DataFrame(d)
print"DataFrame...\n",dataFrame

# fetch car purchased between two dates
# 1st Date: 2021-05-10
# 2nd Date: 2021-08-25
resDF = dataFrame.loc[(dataFrame["Date_of_Purchase"] >= "2021-05-10") & (dataFrame["Date_of_Purchase"] <= "2021-08-25")]

# print filtered data frame
print"\nCars purchased between 2 dates: \n",resDF

Đầu ra

Điều này sẽ tạo ra kết quả sau -

DataFrame...
        Car   Date_of_Purchase
0       BMW         2021-07-10
1     Lexus         2021-08-12
2      Audi         2021-06-17
3  Mercedes         2021-03-16
4    Jaguar         2021-02-19
5   Bentley         2021-08-22

Cars purchased between 2 dates:
       Car   Date_of_Purchase
0      BMW         2021-07-10
1    Lexus         2021-08-12
2     Audi         2021-06-17
5  Bentley         2021-08-22