วิธีสร้างช่วงวันที่ใน pandas (3 ตัวอย่าง)
คุณสามารถใช้ฟังก์ชัน pandas.date_range() เพื่อสร้างช่วงวันที่ในหมีแพนด้า
ฟังก์ชันนี้ใช้ไวยากรณ์พื้นฐานต่อไปนี้:
pandas.date_range(เริ่มต้น, สิ้นสุด, ระยะเวลา, ความถี่, …)
ทอง:
- start : วันที่เริ่มต้น
- end : วันที่สิ้นสุด
- ระยะเวลา: จำนวนงวดที่จะสร้าง
- freq : ความถี่ที่จะใช้ (อ้างถึง รายการนี้ สำหรับนามแฝงความถี่)
ตัวอย่างต่อไปนี้แสดงวิธีใช้ฟังก์ชันนี้ในทางปฏิบัติ
ตัวอย่างที่ 1: สร้างช่วงวันที่ที่มีแต่ละวัน
รหัสต่อไปนี้แสดงวิธีสร้างช่วงวันที่ที่ประกอบด้วยวันแต่ละวันโดยมีวันที่เริ่มต้นและสิ้นสุดเฉพาะ:
import pandas as pd #create 10-day date range p.d. date_range (start=' 1/1/2020 ', end= '10/1/2020 ') DatetimeIndex(['2020-01-01', '2020-01-02', '2020-01-03', '2020-01-04', '2020-01-05', '2020-01-06', '2020-01-07', '2020-01-08', '2020-01-09', '2020-01-10'], dtype='datetime64[ns]', freq='D')
ผลลัพธ์คือรายการ 10 วันนับจากวันที่เริ่มต้นที่ระบุถึงวันที่สิ้นสุดที่ระบุ
ตัวอย่างที่ 2: สร้างช่วงวันที่ด้วยจำนวนงวดที่ระบุ
รหัสต่อไปนี้แสดงวิธีการสร้างช่วงวันที่ด้วยจำนวนงวดที่กำหนดซึ่งมีระยะห่างเท่ากันระหว่างวันที่เริ่มต้นและวันที่สิ้นสุด:
import pandas as pd #create 10-day date range with 3 equally-spaced periods p.d. date_range (start=' 1/1/2020 ', end=' 1/10/2020 ', periods= 3 ) DatetimeIndex(['2020-01-01 00:00:00', '2020-01-05 12:00:00', '2020-01-10 00:00:00'], dtype='datetime64[ns]', freq=None)
ผลลัพธ์คือรายการ 3 วันที่มีระยะทางเท่ากันนับจากวันที่เริ่มต้นที่ระบุถึงวันที่สิ้นสุดที่ระบุ
ตัวอย่างที่ 3: สร้างช่วงวันที่ที่มีความถี่เฉพาะ
รหัสต่อไปนี้แสดงวิธีการสร้างช่วงวันที่ที่เริ่มต้นในวันที่ระบุและมีความถี่ของวันที่เริ่มต้นเป็นหกเดือน:
import pandas as pd #create date range with six month start dates p.d. date_range (start=' 1/1/2020 ', freq=' MS ', periods= 6 ) DatetimeIndex(['2020-01-01', '2020-02-01', '2020-03-01', '2020-04-01', '2020-05-01', '2020-06-01'], dtype='datetime64[ns]', freq='MS')
ผลลัพธ์คือรายการวันที่หกวันโดยแต่ละวันห่างกันหนึ่งเดือน โปรดทราบว่า ” MS ” หมายถึง “เริ่มต้นของเดือน” คุณสามารถดูรายการนามแฝงวันที่ทั้งหมดได้ ที่นี่
รหัสต่อไปนี้แสดงวิธีสร้างช่วงวันที่โดยเริ่มต้นจากวันที่ที่ระบุและมีความถี่เป็นรายปี:
import pandas as pd #create date range with six consecutive years p.d. date_range (start=' 1/1/2020 ', freq=' YS ', periods= 6 ) DatetimeIndex(['2020-01-01', '2021-01-01', '2022-01-01', '2023-01-01', '2024-01-01', '2025-01-01'], dtype='datetime64[ns]', freq='AS-JAN')
ผลลัพธ์คือรายการวันที่หกวันโดยแต่ละวันห่างกันหนึ่งปี
หมายเหตุ : คุณสามารถดูเอกสารออนไลน์ฉบับเต็มสำหรับฟังก์ชัน pd.date_range() ได้ที่นี่
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการทั่วไปอื่น ๆ ด้วยวันที่ในหมีแพนด้า:
วิธีกรองแถว Pandas DataFrame ตามวันที่
วิธีจัดเรียง Pandas DataFrame ตามวันที่
วิธีแยกเดือนจากวันที่ใน Pandas