2017-09-16 10 views
1

データフレームから1つの列を取り出し、タイムスタンプという名前の変数に追加しました。pandas - 日時を増やす(詳細は記事にあります)

0 2017-01-10 04:45:00 
1 2017-01-10 04:45:00 
2 2017-01-10 04:45:00 
3 2017-01-10 04:46:00 
4 2017-01-10 04:46:00 
5 2017-01-10 04:46:00 
6 2017-01-10 04:47:00 
7 2017-01-10 04:47:00 
8 2017-01-10 17:47:00 
9 2017-01-10 17:52:00 
Name: timestamp, dtype: object 

データの種類は次のとおりです。私は何をしたいか

type(timestamp) 

Out[1]: pandas.core.series.Series 

type(timestamp.values) 

Out[1]: numpy.ndarray 

は9時間を追加しています。

0 2017-01-10 13:45:00 
1 2017-01-10 13:45:00 
2 2017-01-10 13:45:00 
3 2017-01-10 13:46:00 
4 2017-01-10 13:46:00 
5 2017-01-10 13:46:00 
6 2017-01-10 13:47:00 
7 2017-01-10 13:47:00 
8 2017-01-11 02:47:00 
9 2017-01-11 02:52:00 
Name: timestamp, dtype: object 

私が何をすべきか教えていただけたらと思います。

答えて

0

使用pd.Timedelta

s1 + pd.Timedelta(hours=9) 

が出力:

0 2017-01-10 13:45:00 
1 2017-01-10 13:45:00 
2 2017-01-10 13:45:00 
3 2017-01-10 13:46:00 
4 2017-01-10 13:46:00 
5 2017-01-10 13:46:00 
6 2017-01-10 13:47:00 
7 2017-01-10 13:47:00 
8 2017-01-11 02:47:00 
9 2017-01-11 02:52:00 
Name: 1, dtype: datetime64[ns] 
+0

私はこのエラーを得ました。 TypeError:Timedeltaではなくstrでなければなりません どのようなタイプを変更する必要がありますか? – Dekalotte

+0

Ah ..元のシリーズはpandas datetimeではありません。これはdatetimeモジュールのdatetimeです。あなたはpd.to_datetime(タイムスタンプ)することができます。 –

+0

ありがとうございます。これでエラーは発生しませんでしたが、時間は変わりません。/ a = pd.to_datetime(タイムスタンプ)\ n a = a + pd.Timedelta(時間= 9)\ n – Dekalotte

関連する問題