#python #pandas #datetime
#python #pandas #datetime
Вопрос:
У меня есть фрейм данных транспортных данных. Поля datetime регистрируются в этом формате: [2020, 12, 10, 15, 0, 5, 18000000]. Как мне проанализировать их как объекты datetime?
Комментарии:
1. Итак, в df есть столбец, содержащий такие списки?
2. Во-первых, 18000000 неверно: количество микросекунд должно быть <1000000.
Ответ №1:
Вы можете передать его с *
datetime.datetime
помощью конструктора и использовать любую функцию pandas, чтобы применить это к каждому значению в вашем pandas.Series
.
>>> from datetime import datetime
>>> datetime(*[2020, 12, 10, 15, 0, 5, 18000])
datetime.datetime(2020, 12, 10, 15, 0, 5, 18000)
Еще один момент: вам нужно будет обновить поле микросекунды.
Например.
from datetime import datetime
import pandas as pd
df = pd.DataFrame({"example": [[2020, 12, 10, 15, 0, 5, 18000000]]})
df.example = df.example.apply(lambda x: datetime(
*(v if i != len(x) - 1 else v // 1000 for i, v in enumerate(x))
))