นุ่น: วิธีเลือกแถวระหว่างวันที่สองวัน
คุณสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อเลือกแถวระหว่างวันที่สองวันที่ระบุใน DataFrame ของแพนด้า:
df[df. date . between (' 2022-01-02 ', ' 2022-01-06 ')]
ตัวอย่างนี้จะเลือกแถวทั้งหมดใน DataFrame ระหว่างวันที่ 01/02/2022 ถึง 01/06/2022
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ
ตัวอย่าง: เลือกแถวระหว่างวันที่สองวันใน Pandas
สมมติว่าเรามี DataFrame แพนด้าดังต่อไปนี้:
import pandas as pd #createDataFrame df = pd. DataFrame ({' date ': pd. date_range (start=' 1/1/2022 ', periods= 8 ), ' sales ': [18, 20, 15, 14, 10, 9, 8, 12], ' returns ': [5, 7, 7, 9, 12, 3, 2, 4]}) #view DataFrame print (df) date sales returns 0 2022-01-01 18 5 1 2022-01-02 20 7 2 2022-01-03 15 7 3 2022-01-04 14 9 4 2022-01-05 10 12 5 2022-01-06 9 3 6 2022-01-07 8 2 7 2022-01-08 12 4
เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อเลือกเฉพาะแถวระหว่างวันที่ 01/02/2022 ถึง 01/06/2022:
#select all rows where date is between 2022-01-02 and 2022-01-06
df[df. date . between (' 2022-01-02 ', ' 2022-01-06 ')]
date sales returns
1 2022-01-02 20 7
2 2022-01-03 15 7
3 2022-01-04 14 9
4 2022-01-05 10 12
5 2022-01-06 9 3
โปรดทราบว่าจะเลือกเฉพาะแถวระหว่างวันที่ 2022-01-02 ถึง 2022-01-06 เท่านั้น
หากต้องการ คุณสามารถตั้งค่าวันที่เริ่มต้นและวันที่สิ้นสุดนอกเหนือจากฟังก์ชัน between() ได้:
#define start and end dates
start_date = ' 2022-01-02 '
end_date = ' 2022-01-06 '
#select all rows where date is between start and end
df[df. date . between (start_date, end_date)]
date sales returns
1 2022-01-02 20 7
2 2022-01-03 15 7
3 2022-01-04 14 9
4 2022-01-05 10 12
5 2022-01-06 9 3
สิ่งนี้ให้ผลลัพธ์เดียวกัน
โปรดทราบว่าหากคอลัมน์วันที่ของคุณไม่อยู่ในรูปแบบวันที่และเวลาที่สามารถจดจำได้ คุณอาจจำเป็นต้องใช้โค้ดต่อไปนี้เพื่อแปลงเป็นรูปแบบวันที่และเวลาก่อน:
df[' date '] = pd. to_datetime (df[' date '])
เมื่อคุณทำเสร็จแล้ว คุณสามารถใช้ฟังก์ชัน between() เพื่อเลือกแถวระหว่างวันที่ระบุได้
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการทั่วไปอื่น ๆ ในแพนด้า:
วิธีสร้างช่วงวันที่ใน Pandas
วิธีแยกเดือนจากวันที่ใน Pandas
วิธีแปลงการประทับเวลาเป็นวันที่/เวลาใน Pandas