У меня есть набор данных:
A B
2019-06-19 09:18:00 2019-06-22 09:14:37
2019-06-27 22:35:00 2019-06-27 22:04:20
2019-06-26 19:50:00 2019-06-26 21:18:45
, где он представляет дату и время для обоих столбцов.
Я хотел построить столбцы C, которые показывают разницу в дате и времени в часах в десятичном формате и примените следующее преобразование.
raw_data['C']= raw_data['B'] - raw_data['A']
raw_data['C']= round(raw_data['C']/np.timedelta64(1,'h'),2)
, и мне удалось получить правильное вычисление значения:
C A B
71.94 2019-06-22 09:14:37 2019-06-19 09:18:00
-0.51 2019-06-27 22:04:20 2019-06-27 22:35:00
1.48 2019-06-26 21:18:45 2019-06-26 19:50:00
Однако, когда я попытался создать категориальную переменную D, где она будет 'Pass', если столбец C меньше 3, у меня неправильное преобразование для третьей строки. Т.е. это должно быть значение «Pass».
raw_data['D']= "Fail"
raw_data.loc[raw_data['C']<3, 'D']= 'Pass'
D C
71.94 Fail
-0.51 Pass
1.48 Fail
Могу ли я знать, каковы возможные причины неудачного преобразования? Спасибо!