2017-03-06 15 views
1

私はタイムスタンプ値を持つデータフレームを持っています。タイムスタンプ値を上に丸めます。パンダのタイムスタンプ列を上の分に丸める方法

しかし、希望の出力が得られません。 私は同じことを行うには次のリンクを使用しています

[1]: http://stackoverflow.com/questions/32344533/how-do-i-round-datetime-column-to-nearest-quarter-hour/32344636 

は、どのように私はパンダを使用していることを行うことができますか?

example: output: 
05:06:34 05:07 
05:09:43 05:10 
+1

A [、最小完全、かつ検証](http://stackoverflow.com/help/mcve)の例では、それが簡単に私たちはあなたを助けるようになります。 –

+0

私はそれが答えると思うここに(http://stackoverflow.com/q/42619947/2901002) – jezrael

+0

@StephenRauchしかし、私は秒の値に基づいて四捨五入したい。 – user99

答えて

1

あなたは最も近い分に切り上げます関数を記述することができます

コード:

import datetime as dt 
def round_up_to_minute(timestamp): 
    return timestamp + dt.timedelta(
     seconds=60-timestamp.second, 
     microseconds=-timestamp.microsecond) 

テストコード:

にそれを適用するにはデータフレーム、あなたは何かのようにすることができます:

now = dt.datetime.now() 
now_plus = now + dt.timedelta(minutes=1) 
df = pd.DataFrame(data=[[now, now], [now_plus, now_plus]], 
        columns=['datetime', 'datetime_rounded']) 

df['datetime_rounded'] = df['datetime_rounded'].apply(round_up_to_minute) 

print(df) 

結果:

    datetime datetime_rounded 
0 2017-03-06 07:36:54.794 2017-03-06 07:37:00 
1 2017-03-06 07:37:54.794 2017-03-06 07:38:00 
+0

ありがとうございます。それは私のために働いた。 – user99

関連する問題