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

Python Pandas - ดึงจำนวนวันจาก TimeDeltaIndex

หากต้องการดึงจำนวน วัน (Days) จากแต่ละองค์ประกอบของ TimeDeltaIndex สามารถใช้คุณสมบัติ TimedeltaIndex.days

ขั้นตอนการทำงาน

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. ดึงจำนวนวัน

print("\nจำนวนวันจาก TimeDeltaIndex...\n", tdIndex.days)

ตัวอย่างโค้ดสมบูรณ์

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)

# แสดงจำนวนวันจากแต่ละองค์ประกอบ
print("\nจำนวนวันจาก TimeDeltaIndex...\n", tdIndex.days)

# ดึง DataFrame ของส่วนประกอบ TimeDeltas
print("\nDataFrame ของส่วนประกอบ TimeDeltas...\n", tdIndex.components)

ผลลัพธ์ที่คาดหวัง

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)
จำนวนวันจาก TimeDeltaIndex... Int64Index([10, 0, 2, 0], dtype='int64')
DataFrame ของส่วนประกอบ 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

คำอธิบาย: คุณสมบัติ days คืนค่าจำนวนวันเต็มของแต่ละ Timedelta (ไม่นับชั่วโมง/นาที/วินาทีที่เหลือ) ต่างจาก components['days'] ที่เป็นคอลัมน์ใน DataFrame ส่วนประกอบ