หากต้องการสร้าง PeriodIndex และดึงวันของเดือน (Day of Month) สามารถใช้ pandas.PeriodIndex() สร้างออบเจ็กต์ แล้วใช้คุณสมบัติ PeriodIndex.day
ขั้นตอนการทำงาน
1. นำเข้าไลบรารีที่จำเป็น
import pandas as pd
2. สร้างออบเจ็กต์ PeriodIndex ด้วยความถี่เป็นวัน
periodIndex = pd.PeriodIndex(
['2018-07-25', '2019-10-30', '2020-11-20',
'2021-09-15', '2022-03-12', '2023-06-18'],
freq="D"
)
3. แสดง PeriodIndex
print("PeriodIndex...\n", periodIndex)
4. ดึงวันของเดือน
print("\nวันของเดือนจาก PeriodIndex...\n", periodIndex.day)
ตัวอย่างโค้ดสมบูรณ์
import pandas as pd
# สร้าง PeriodIndex object
# PeriodIndex เป็น immutable ndarray ที่เก็บค่าลำดับบ่งชี้ช่วงเวลาสม่ำเสมอ
# เราตั้งความถี่ด้วยพารามิเตอร์ "freq"
periodIndex = pd.PeriodIndex(
['2018-07-25', '2019-10-30', '2020-11-20',
'2021-09-15', '2022-03-12', '2023-06-18'],
freq="D"
)
# แสดง PeriodIndex object
print("PeriodIndex...\n", periodIndex)
# แสดง PeriodIndex frequency
print("\nPeriodIndex frequency...\n", periodIndex.freq)
# แสดงวันของเดือนจาก PeriodIndex object
print("\nวันของเดือนจาก PeriodIndex...\n", periodIndex.day)
ผลลัพธ์ที่คาดหวัง
PeriodIndex... PeriodIndex(['2018-07-25', '2019-10-30', '2020-11-20', '2021-09-15', '2022-03-12', '2023-06-18'], dtype='period[D]')
PeriodIndex frequency... <Day>
วันของเดือนจาก PeriodIndex... Int64Index([25, 30, 20, 15, 12, 18], dtype='int64')
คำอธิบาย: คุณสมบัติ day คืนค่าวันของเดือน (1-31) ของแต่ละช่วงเวลา ในขณะที่ dayofyear จะคืนค่าวันของปี (1-365/366)