2017-11-11 45 views
-2

我試圖創建一個列他的價值觀是兩米欄的減法,但我發現奇怪的值:爲什麼我通過減去兩列來得到負數?

Patient["Waiting"] = Patient["Appointment"] - Patient["Scheduled"] 

Scheduled     Appointment  Waiting 
2016-04-29 18:38:08   2016-04-29  -1 days +05:21:52 

我不知道爲什麼這些負面的值出現?

+1

您的預約日期沒有與之相關的時間,所以假設零時間(午夜) –

+1

這只是時間差,負的,因爲預約已經比預定的18:38:08早00:00:00。如果你不關心方向,你可以「abs」。 – Meitham

回答

0

@cᴏʟᴅsᴘᴇᴇᴅ更好地解釋它:

當兩個datetime對象相減,結果是timedelta。取決於哪個日期較大,結果可能是正面或負面。

此外,如果列中的所有值都沒有時間,熊貓則不顯示。

Patient["Waiting"] = Patient["Appointment"] - Patient["Scheduled"] 
        2016-04-29 00:00:00 - 2016-04-29 18:38:08 

對於刪除負面timedelatas可以使用abs

Patient["Waiting"] = (Patient["Appointment"] - Patient["Scheduled"]).abs() 
+1

這並沒有真正回答這個問題。當減去兩個日期時間對象時,結果是一個timedelta。取決於哪個日期較大,結果可能是正面或負面。另外,我不認爲OP有錯誤的訂單,他們只是想了解結果。哎呀,似乎他們甚至不知道他們想要什麼。 –

+0

@cᴏʟᴅsᴘᴇᴇᴅ - 再次感謝你的英語問題,最好的解釋。 – jezrael