Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python Pandas – สร้างช่วงวันที่ (Date Range) ด้วย date_range()

ภาพรวม

ใช้ pd.date_range() สร้าง DatetimeIndex ที่มีวันที่ต่อเนื่องตาม frequency ที่กำหนด

ตัวอย่างโค้ด


import pandas as pd

# เริ่ม 1 มิถุนายน 2021 จำนวน 60 วัน (frequency default = 'D' daily)
dates = pd.date_range('6/1/2021', periods=60)

print("Displaying dates in a range...\n", dates)

ผลลัพธ์

DatetimeIndex(['2021-06-01', '2021-06-02', ..., '2021-07-30'],
              dtype='datetime64[ns]', freq='D')

พารามิเตอร์หลักของ date_range()

Frequency Strings พิเศษ

  • D – Daily (วัน)
  • B – Business day (วันทำการ ไม่รวมเสาร์อาทิตย์)
  • W – Weekly (วันอาทิตย์ default) -> W-MON สำหรับวันจันทร์
  • M – Month End
  • MS – Month Start
  • Q – Quarter End
  • H – Hourly, T/min – Minutely, S – Secondly

ตัวอย่างเพิ่มเติม


# ทุกวันจันทร์ 10 สัปดาห์
pd.date_range('2021-01-01', periods=10, freq='W-MON')

# ทุก 15 นาที ในวันเดียว
pd.date_range('2021-01-01', '2021-01-02', freq='15T')

# Month ends ทั้งปี
pd.date_range('2021-01-01', periods=12, freq='M')

# กำหนด timezone
pd.date_range('2021-01-01', periods=5, freq='D', tz='Asia/Bangkok')
Parameterคำอธิบายตัวอย่าง
startวันที่เริ่มต้น'2021-01-01', '1/1/2021'
endวันที่สิ้นสุด'2021-12-31'
periodsจำนวน periods (ใช้กับ start หรือ end)periods=30
freqความถี่ (frequency string)'D', 'H', 'T', 'M', 'W', 'Q', 'A'
tzTimezone'UTC', 'Asia/Bangkok'
normalizenormalize time ไป 00:00:00True/False