Computer >> Máy Tính >  >> Lập trình >> Python

So sánh Dấu thời gian cụ thể cho Pandas DataFrame - Python

Để so sánh các dấu thời gian cụ thể, hãy sử dụng số chỉ mục trong dấu ngoặc vuông. Đầu tiên, hãy nhập thư viện được yêu cầu -

import pandas as pd

Tạo một DataFrame có 3 cột. Chúng tôi có hai cột ngày với dấu thời gian -

dataFrame = 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-05"),
          pd.Timestamp("2021-12-03"),
          pd.Timestamp("2021-10-30"),
          pd.Timestamp("2021-11-29"),
          pd.Timestamp("2021-08-20"),
       ]
})

Tìm Dấu thời gian cụ thể, giả sử từ 1 đến 3 hàng -

timestamp1_diff = abs(dataFrame['Date_of_Purchase'][0]-dataFrame['Date_of_Service'][0])
timestamp2_diff = abs(dataFrame['Date_of_Purchase'][1]-dataFrame['Date_of_Service'][1])
timestamp3_diff = abs(dataFrame['Date_of_Purchase'][2]-dataFrame['Date_of_Service'][2])

Ví dụ

Sau đây là mã -

import pandas as pd

# create a dataframe with 3 columns
dataFrame = 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-05"),
         pd.Timestamp("2021-12-03"),
         pd.Timestamp("2021-10-30"),
         pd.Timestamp("2021-11-29"),
         pd.Timestamp("2021-08-20"),
      ]
})

print"DataFrame...\n", dataFrame

# compare specific timestamps
timestamp1_diff = abs(dataFrame['Date_of_Purchase'][0]-dataFrame['Date_of_Service'][0])
timestamp2_diff = abs(dataFrame['Date_of_Purchase'][1]-dataFrame['Date_of_Service'][1])
timestamp3_diff = abs(dataFrame['Date_of_Purchase'][2]-dataFrame['Date_of_Service'][2])

print"\nDifference between Car 1 Date of Purchase and Service \n",timestamp1_diff
print"\nDifference between Car 2 Date of Purchase and Service \n",timestamp2_diff
print"\nDifference between Car 3 Date of Purchase and Service \n",timestamp3_diff

Đầu ra

Điều này sẽ tạo ra kết quả sau -

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

Difference between Car 1 Date of Purchase and Service
148 days 00:00:00

Difference between Car 2 Date of Purchase and Service
145 days 00:00:00

Difference between Car 3 Date of Purchase and Service
127 days 00:00:00