1
私は3つのパラメータ "日付"、 "時間"と "値"を持つテーブルがあります。私は毎回10分の後に "時間"に対応する値を持つこのテーブルに新しい列を追加したいと思います。パンダの列の対応する値を印刷
I容易にするために秒を使用して新しい列を作成するけれども。
ここで、最初のvlaueを持つ「x」と、10分後に「Time」に対応する値を仮定します。この場合、私たちは何ができますか?
私は3つのパラメータ "日付"、 "時間"と "値"を持つテーブルがあります。私は毎回10分の後に "時間"に対応する値を持つこのテーブルに新しい列を追加したいと思います。パンダの列の対応する値を印刷
I容易にするために秒を使用して新しい列を作成するけれども。
ここで、最初のvlaueを持つ「x」と、10分後に「Time」に対応する値を仮定します。この場合、私たちは何ができますか?
IIUCあなたが最初miliseconds
に変換し、1000
を分割し、その後、10 Min
を追加し、sub
によってdates
とhours
を削除することができます。
df = pd.DataFrame({'Time': ['08:01:29:12','08:03:29:12','08:05:29:12'],
'Date':['1/2/2016','1/2/2016','1/2/2016']})
df['Date'] = pd.to_datetime(df.Date)
df['Time'] = pd.to_datetime(df.Time, format='%H:%M:%S:%f')
df['new'] = df.Time.sub(df.Time.values.astype('<M8[h]') +
pd.offsets.Minute(10)).astype('timedelta64[ms]')/1000
print (df)
Date Time new
0 2016-01-02 1900-01-01 08:01:29.120 689.12
1 2016-01-02 1900-01-01 08:03:29.120 809.12
2 2016-01-02 1900-01-01 08:05:29.120 929.12
または:
df['new'] = df.Time.sub(df.Time.values.astype('<M8[h]') +
pd.to_timedelta('00:10:00')).astype('timedelta64[ms]')/1000
print (df)
Date Time new
0 2016-01-02 1900-01-01 08:01:29.120 689.12
1 2016-01-02 1900-01-01 08:03:29.120 809.12
2 2016-01-02 1900-01-01 08:05:29.120 929.12