問題

私は2つの列、["StartDate" ,"duration"]を持つdataFrameを持っています StartDate列の要素はdatetime型で、durationはintです。

何かのようなもの:

 StartDate  Duration
08:16:05    20  
07:16:01    20
 

私は得ると思う:

 EndDate 
08:16:25
07:16:21
 

時間に秒を加えるだけです。

私はデルタの時間タイプのようないくつかのアイデアをチェックしていて、それらの日時はすべてデルタ時間を追加する可能性がありますが、これまでのところ、DataFrames(ベクトルの方法で、操作を実行するすべての行を反復処理することが可能かもしれないため)でそれを行う方法を見つけることができます。

  ベストアンサー

このdfを考えてみましょう

     StartDate   duration
0   01/01/2017  135
1   01/02/2017  235
 

このようにdatetime列を取得できます

 df['EndDate'] = pd.to_datetime(df['StartDate']) + pd.to_timedelta(df['duration'], unit='s')
df.drop('StartDate,'duration', axis = 1, inplace = True)
 

あなたは得る

     EndDate             
0   2017-01-01 00:02:15 
1   2017-01-02 00:03:55 
 

編集:あなたが投稿したサンプルデータフレーム

 df['EndDate'] = pd.to_timedelta(df['StartDate']) + pd.to_timedelta(df['Duration'], unit='s')
 

  同じタグがついた質問を見る

pythonpandas