列的熊猫求和

维吉

可以说我有这样的数据

df = pd.DataFrame({"MONTHS":[1,2,3,4,5,6], "METRIC":[430,584,648,571,610,535]})

df = pd.DataFrame({“ MONTHS”:[1,2,3,4,5,6],“ METRIC”:[430,584,648,571,610,535]})我想做的是找到指标列的总和= 3378

MONTHS NEW_METRIC
 0       3378
 1       3378
 2       2948
 3       2794
 4       2730
 5       2807
 6       2768

因此,这里基本上创建了一个新行,添加了0,并且相应的新指标是总和,对于值1,它也是新指标的总和,但是从month = 2开始,它应该减去指标的滞后值(3378-430)并类似地几个月(3378-584)等,直到最后。第一步,我想将总和存储在失败的结果中

sum_METRIC = df.agg({"METRIC":"sum"}).collect()[0]
result = sum_METRIC["sum(METRIC)"]

引发错误“系列”对象没有属性“收集”。

如何求和,然后使用滞后时间减去?

安迪·海登(Andy Hayden)

您可以将METRIC减去所得的总和:

In [11]: df["METRIC"].sum() - df["METRIC"].reindex(np.arange(0, 7)).shift(2).fillna(0)
Out[11]:
0    3378.0
1    3378.0
2    2948.0
3    2794.0
4    2730.0
5    2807.0
6    2768.0
Name: METRIC, dtype: float64

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章