У меня есть следующий кадр данных, df
:Панда время часа преобразования с использованием лямбды
no. site_number date time Class Speed_KPH
0 11 2016-02-27 00:00:13.0000000 Short 43
1 11 2016-02-27 00:02:15.0000000 Short 45
2 11 2016-02-27 00:00:28.0000000 Short 31
3 11 2016-02-27 00:03:28.0000000 Short 31
Я хотел бы создать новый столбец, time_slot
из time
колонны, таким образом, что она дает конец данному часа ,
no. site_number date time Class Speed_KPH Hour_slot
0 11 2016-02-27 00:00:13.0000000 Short 43 1
1 11 2016-02-27 00:02:15.0000000 Short 45 3
2 11 2016-02-27 00:00:28.0000000 Short 31 1
3 11 2016-02-27 00:03:28.0000000 Short 31 4
Я определил функцию преобразования времени в один час, а затем использовали лямбда-исчисление, чтобы определить новый столбец, time_slot
.
def time_slot_convert(time):
return (time.hour()) + 1
df['time_slot'] = df.apply(lambda row: time_slot_convert(row['time']), axis =1)
Однако, я получаю эту ошибку:
AttributeError: ("'str' object has no attribute 'hour'", u'occurred at index 0')