หากต้องการสร้าง PeriodIndex และดึงวันในสัปดาห์ สามารถใช้ pandas.PeriodIndex() สร้างออบเจ็กต์ แล้วใช้คุณสมบัติ PeriodIndex.dayofweek
ขั้นตอนการทำงาน
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. ดึงวันในสัปดาห์
วันในสัปดาห์แสดงเป็น: จันทร์=0, อังคาร=1, ..., อาทิตย์=6
print("\nวันในสัปดาห์จาก PeriodIndex...\n", periodIndex.dayofweek)
ตัวอย่างโค้ดสมบูรณ์
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 object
# วันในสัปดาห์: จันทร์=0, อังคาร=1 ... อาทิตย์=6
print("\nวันในสัปดาห์จาก PeriodIndex...\n", periodIndex.dayofweek)
ผลลัพธ์ที่คาดหวัง
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')
วันในสัปดาห์จาก PeriodIndex... Int64Index([2, 2, 4, 2, 5, 6], dtype='int64')
คำอธิบาย: ค่าที่ได้ [2, 2, 4, 2, 5, 6] หมายถึง วันพุธ, วันพุธ, วันศุกร์, วันพุธ, วันเสาร์, วันอาทิตย์ ตามลำดับ