หากต้องการทำการ Ceil (ปัดขึ้น) บน TimeDeltaIndex ด้วยความถี่ไมโครวินาที (Microseconds) สามารถใช้เมธอด TimeDeltaIndex.ceil() พร้อมพารามิเตอร์ freq='us'
ขั้นตอนการทำงาน
1. นำเข้าไลบรารีที่จำเป็น
import pandas as pd
2. สร้างออบเจ็กต์ TimeDeltaIndex
tdIndex = pd.TimedeltaIndex(data=[
'4 day 8h 20min 35us 45ns',
'+17:42:19.999999',
'9 day 3h 08:16:02.000055',
'+22:35:25.000075'
])
3. แสดง TimeDeltaIndex
print("TimedeltaIndex...\n", tdIndex)
4. ทำ Ceil ด้วยความถี่ไมโครวินาที
print("\nทำ Ceil ด้วยความถี่ไมโครวินาที...\n",
tdIndex.ceil(freq='us'))
ตัวอย่างโค้ดสมบูรณ์
import pandas as pd
# สร้าง TimeDeltaIndex object
tdIndex = pd.TimedeltaIndex(data=[
'4 day 8h 20min 35us 45ns',
'+17:42:19.999999',
'9 day 3h 08:16:02.000055',
'+22:35:25.000075'
])
# แสดง TimedeltaIndex
print("TimedeltaIndex...\n", tdIndex)
# คืนค่า DataFrame ของส่วนประกอบ TimeDeltas
print("\nDataFrame ของส่วนประกอบ TimeDeltas...\n", tdIndex.components)
# Ceil operation บน TimeDeltaIndex ด้วยความถี่ไมโครวินาที
# สำหรับไมโครวินาที ใช้ 'us'
print("\nทำ Ceil ด้วยความถี่ไมโครวินาที...\n",
tdIndex.ceil(freq='us'))
ผลลัพธ์ที่คาดหวัง
TimedeltaIndex... TimedeltaIndex(['4 days 08:20:00.000035045', '0 days 17:42:19.999999', '9 days 11:16:02.000055', '0 days 22:35:25.000075'], dtype='timedelta64[ns]', freq=None)
DataFrame ของส่วนประกอบ TimeDeltas...
days hours minutes seconds milliseconds microseconds nanoseconds
0 4 8 20 0 0 35 45
1 0 17 42 19 999 999 0
2 9 11 16 2 0 55 0
3 0 22 35 25 0 75 0
ทำ Ceil ด้วยความถี่ไมโครวินาที...
TimedeltaIndex(['4 days 08:20:00.000036', '0 days 17:42:19.999999', '9 days 11:16:02.000055', '0 days 22:35:25.000075'], dtype='timedelta64[ns]', freq=None)
คำอธิบาย: การทำ Ceil ด้วยความถี่ 'us' จะปัดค่าขึ้นเป็นไมโครวินาทีที่ใกล้ที่สุด
- 35.045 ไมโครวินาที → ปัดขึ้นเป็น 36 ไมโครวินาที (เพราะมี 45 นาโนวินาที)
- 999,999 ไมโครวินาที → อยู่ที่ขอบเขตแล้ว ไม่ปัดขึ้น
- 55 ไมโครวินาที → อยู่ที่ขอบเขตแล้ว ไม่ปัดขึ้น
- 75 ไมโครวินาที → อยู่ที่ขอบเขตแล้ว ไม่ปัดขึ้น