Ich hatte einige Probleme, also werde ich es aufschreiben.
dt.ipynb
import pandas as pd
#JST-Beispieldaten
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
Natürlich ist es immer noch eine Zeichenkette.
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 bis_datetime()Wenn Sie es an übergeben, wird die UTC-Zeit zurückgegeben. Konvertieren Sie sie daher in 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
Ich möchte wissen, ob es einen intelligenteren Weg gibt ...
Recommended Posts