Я создаю карту использования для некоторой пользовательской аналитики.Ось Y будет днем недели, а ось X будет часом дня (24:00).Я извлек данные из API. (Обратите внимание, что на самом деле получается 6000 строк данных)
IN:
import requests
import json
response = requests.get("api.url")
data = response.json()
df=pd.DataFrame(data['Sessions'])
df.dtypes
print(df['StartTime'])
OUT:
0 2019-01-29T22:08:40
1 2019-01-29T22:08:02
2 2019-01-29T22:05:10
3 2019-01-29T21:34:30
4 2019-01-29T21:32:49
Name: StartTime, Length: 100, dtype: object
Я бы обычнопреобразовать объект в pandas.dt, а затем разделить его на два столбца:
IN:
df['StartTime'] = pd.to_datetime(df['StartTime'], format='%d%b%Y:%H:%M:%S.%f')
df['Date'] = [d.date() for d in df['StartTime']]
df['Time'] = [d.time() for d in df['StartTime']]
OUT:
' StartTime Date Time
0 2019-01-29T22:08:40 2019-01-29 22:08:40
1 2019-01-29T22:08:02 2019-01-29 22:08:02
2 2019-01-29T22:05:10 2019-01-29 22:05:10
3 2019-01-29T21:34:30 2019-01-29 21:34:30
4 2019-01-29T21:32:49 2019-01-29 21:32:49
Это не работает из-заэта забавная буква «Т» в середине моей отметки времени и, возможно, из-за типа данных.
Мне нужно удалить букву Т, чтобы я мог преобразовать ее в стандартный формат даты и времени, а затем разделить дату и время насвои столбцы.БОНУС: Я бы хотел перенести только час в свою колонку.Вместо 22:08:02 было бы 22.