Pandas - 从DataFrame为不同的行添加值

时间:2017-08-15 17:06:44

标签: python pandas

我有一个pandas df,我想为“total_load”列中的每一行添加“Battery capacity”列的值。例如4755 +( - 380)= 4375,依此类推。 显然,我现在正在做的是“电池容量”列中的每一行:5200 - “total_load”列中的值。我有什么想法可以写出来吗?我应该使用for循环吗?

 df["Battery capacity"] = 5200 + df["total_load"] 

enter image description here

输出应该是这样的:

time                total_load   battery capacity
2016-06-01 00:00:00   -445        4755
2016-06-01 01:00:00   -380        4375
2016-06-01 02:00:00   -350        4025

谢谢!

1 个答案:

答案 0 :(得分:2)

IIUC,使用cumsum获取total_load的“运行总计”:

df['Battery capacity'] = df['total_load'].cumsum() + 5200

输出:

                     Battery capacity  total_load
time                                             
2016-01-01 00:00:00            4755.0      -445.0
2016-01-01 01:00:00            4375.0      -380.0
2016-01-01 02:00:00            4025.0      -350.0
2016-01-01 03:00:00            3685.0      -340.0