หากต้องการทำ round operation (การปัดเศษปกติ) บน TimeDeltaIndex ด้วยความถี่ชั่วโมง ให้ใช้เมธอด TimeDeltaIndex.round() โดยระบุพารามิเตอร์ freq เป็น 'H'
ขั้นตอนการทำงาน
1. นำเข้าไลบรารีที่จำเป็น
import pandas as pd
2. สร้างอ็อบเจ็กต์ TimeDeltaIndex
tdIndex = pd.TimedeltaIndex(data=[
'10 day 5h 2 min 3us 10ns',
'+22:39:19.999999',
'2 day 4h 03:08:02.000045',
'+21:15:45.999999'
])
3. แสดง TimeDeltaIndex
print("TimedeltaIndex...\n", tdIndex)
4. ทำ Round Operation ด้วยความถี่ชั่วโมง
print("\nPerforming round operation with hourly frequency...\n", tdIndex.round(freq='H'))
ตัวอย่างโค้ดสมบูรณ์
import pandas as pd
# สร้าง TimeDeltaIndex object
tdIndex = pd.TimedeltaIndex(data=[
'10 day 5h 2 min 3us 10ns',
'+22:39:19.999999',
'2 day 4h 03:08:02.000045',
'+21:15:45.999999'
])
# แสดง TimedeltaIndex
print("TimedeltaIndex...\n", tdIndex)
# แสดงคอมโพเนนต์ของ TimeDeltas
print("\nThe Dataframe of the components of TimeDeltas...\n", tdIndex.components)
# Round operation ด้วยความถี่ชั่วโมง
print("\nPerforming round operation with hourly frequency...\n", tdIndex.round(freq='H'))
ผลลัพธ์ที่คาดหวัง
TimedeltaIndex...
TimedeltaIndex(['10 days 05:02:00.000003010', '0 days 22:39:19.999999',
'2 days 07:08:02.000045', '0 days 21:15:45.999999'],
dtype='timedelta64[ns]', freq=None)
The Dataframe of the components of TimeDeltas...
days hours minutes seconds milliseconds microseconds nanoseconds
0 10 5 2 0 0 3 10
1 0 22 39 19 999 999 0
2 2 7 8 2 0 45 0
3 0 21 15 45 999 999 0
Performing round operation with hourly frequency...
TimedeltaIndex(['10 days 05:00:00', '0 days 23:00:00',
'2 days 07:00:00', '0 days 21:00:00'],
dtype='timedelta64[ns]', freq=None)
หมายเหตุ: การทำ round ด้วยความถี่ 'H' จะปัดเศษค่าไปยังชั่วโมงที่ใกล้ที่สุด โดยค่าที่มากกว่าหรือเท่ากับ 30 นาทีจะปัดขึ้นเป็นชั่วโมงถัดไป ค่าน้อยกว่าจะปัดลง