我正在處理以下代碼:
df1 = pd.DataFrame()
df1['Date'] = ["29/07/2021", "29/07/2021", "29/07/2021", "29/07/2021", "30/07/2021", "30/07/2021", "30/07/2021", "30/07/2021", "31/07/2021", "31/07/2021", "01/08/2021", "01/08/2021", "02/08/2021"]
df1['Time'] = ["06:48:00", "06:52:00", "06:56:00", "06:59:00", "07:14:00", "07:24:00", "07:40:00", "07:45:00", "08:42:00", "08:45:00", "08:52:00", "08:55:00", "09:07:00"]
df1['Column1'] = [0.0001, 0.002, 0.004, 0.5, 0.005, 0.0006, 0.08, 0.07, 0.003, 0.02, 0.0002, 0.0045, 0.0034]
df2 = pd.DataFrame()
df2['Date'] = ["29/07/2021", "30/07/2021", "31/07/2021", "01/08/2021", "02/08/2021"]
df2['Column1'] = [0.0056, 0.0594, 0.959, 0.0034, 0.00065]
對于新資料框中的每一天,我想從 df1['Column1] 值中減去 df2['Column1'] 值。
例如,對于第一個日期(即 29/07/2021),我們將有一個這樣的資料框:
Date New_Column
29/07/2021 0.0001-0.0056
29/07/2021 0.002-0.0056
29/07/2021 0.004-0.0056
29/07/2021 0.5-0.0056
依此類推,對于每個日期,我們將從與 df1 中的一個日期相關的不同值中減去一個與 df2 中的一個日期相關的值。
謝謝你。
uj5u.com熱心網友回復:
如果 中沒有重復的日期df2,那么我們可以創建從日期到值的映射,并將map其映射到 中的Date列df1。然后我們可以簡單地減去相應的值:
df1['New Column'] = df1['Column1'] - df1['Date'].map(df2.set_index('Date')['Column1'])
輸出:
Date Time Column1 New Column
0 29/07/2021 06:48:00 0.0001 -0.00550
1 29/07/2021 06:52:00 0.0020 -0.00360
2 29/07/2021 06:56:00 0.0040 -0.00160
3 29/07/2021 06:59:00 0.5000 0.49440
4 30/07/2021 07:14:00 0.0050 -0.05440
5 30/07/2021 07:24:00 0.0006 -0.05880
6 30/07/2021 07:40:00 0.0800 0.02060
7 30/07/2021 07:45:00 0.0700 0.01060
8 31/07/2021 08:42:00 0.0030 -0.95600
9 31/07/2021 08:45:00 0.0200 -0.93900
10 01/08/2021 08:52:00 0.0002 -0.00320
11 01/08/2021 08:55:00 0.0045 0.00110
12 02/08/2021 09:07:00 0.0034 0.00275
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/461637.html
上一篇:pl/SQLfor回圈
下一篇:MySql的日期值格式
