J'ai eu quelques problèmes alors je vais l'écrire.
dt.ipynb
import pandas as pd
#Exemple de données JST
data = [
{"count":224, "time":"2016-01-01T09:00:00+0900"},
{"count":198, "time":"2016-01-01T12:00:00+0900"},
{"count":312, "time":"2016-01-01T20:00:00+0900"},
]
df = pd.DataFrame(data)
df
Bien sûr, il s'agit toujours d'une chaîne de caractères.
count | time | |
---|---|---|
0 | 224 | 2016-01-01T09:00:00+0900 |
1 | 198 | 2016-01-01T12:00:00+0900 |
2 | 312 | 2016-01-01T20:00:00+0900 |
dt.ipynb
#iso8601 à_datetime()Si vous le transmettez à, l'heure UTC sera renvoyée, alors convertissez-la en JST.
dt = pd.to_datetime(df["time"].tolist()).tz_localize("UTC").tz_convert("Asia/Tokyo")
df.set_index(dt, inplace=True)
df.drop(["time"], axis=1, inplace=True)
df
count | |
---|---|
2016-01-01 09:00:00+09:00 | 224 |
2016-01-01 12:00:00+09:00 | 198 |
2016-01-01 20:00:00+09:00 | 312 |
dt.ipynb
type(df.index)
pandas.tseries.index.DatetimeIndex
Je veux savoir s'il existe un moyen plus intelligent ...
Recommended Posts