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

หาความต่างของ Timestamp ใน Pandas DataFrame ด้วยการลบและ abs()

สามารถลบคอลัมน์ Timestamp ได้โดยตรงใน Pandas ผลลัพธ์เป็น Timedelta ใช้ abs() เพื่อให้ได้ค่าบวกเสมอ (ค่าสัมบูรณ์)

ตัวอย่างโค้ด

import pandas as pd

df = pd.DataFrame({
    "Car": ["Audi", "Lexus", "Tesla", "Mercedes", "BMW"],
    "Date_of_Purchase": [
        pd.Timestamp("2021-06-10"),
        pd.Timestamp("2021-07-11"),
        pd.Timestamp("2021-06-25"),
        pd.Timestamp("2021-06-29"),
        pd.Timestamp("2021-03-20")
    ],
    "Date_of_Service": [
        pd.Timestamp("2021-11-10"),
        pd.Timestamp("2021-12-11"),
        pd.Timestamp("2021-11-25"),
        pd.Timestamp("2021-11-29"),
        pd.Timestamp("2021-08-20")
    ]
})

print("DataFrame:\n", df)

# หาความต่าง Timestamp (ค่าสัมบูรณ์)
diff = abs(df['Date_of_Purchase'] - df['Date_of_Service'])
print("\nความต่างระหว่างวันที่ซื้อและวันที่ซ่อม:\n", diff)

ผลลัพธ์

DataFrame:
       Car Date_of_Purchase Date_of_Service
0     Audi       2021-06-10      2021-11-10
1    Lexus       2021-07-11      2021-12-11
2    Tesla       2021-06-25      2021-11-25
3  Mercedes       2021-06-29      2021-11-29
4      BMW       2021-03-20      2021-08-20

ความต่างระหว่างวันที่ซื้อและวันที่ซ่อม:
0   153 days
1   153 days
2   153 days
3   153 days
4   153 days
dtype: timedelta64[ns]

ทุกคันมีช่วงเวลา 153 วันพอดีระหว่างซื้อและซ่อม